linux学习day19笔记

今日内容

文件处理基础

linux系统的目录结构

windows系统     linux系统
文件夹-------->  目录

根目录:*目录

windows系统:多根结构
	C:\a\b\c\d.txt
	D:\xxx\yyy\zzz\1.txt
        
linux系统:单根结构
	/a/b/c/d.txt  # 第一个/代表根目录,后面的/代表路径分隔符

绝对路径与相对路径

从根开始写的路径就是绝对路径,否则就是相对路径。

绝对路径格式:/a/b/c/1.txt  # 开头必须写/目录
优点:绝对路径无论当前在哪个文件夹,都能找到对应的文件。

相对路径格式:a/b/c.txt  # 开头不能带/目录
# 相对路径必须在对应的目录里才能找到对应的文件。
优点:简单方便快捷。

系统目录介绍

bin(usr/bin):普通用户可执行的命令
sbin(usr/sbin):超级管理员可执行的命令
boot:操作系统内核文件
usr:系统文件(相当于C:Windows)
lib:系统文件
lib64:系统文件
root:root用户的家目录
home/用户名:此用户的家目录

etc:配置文件
/etc/sysconfig/network-scripts/ifcfg-*  # 网络配置文件
/etc/hostname  # 主机名,修改主机名为www:hostnamectl set-hostname www
/etc/resolv.conf  # dns客户端配置文件
/etc/hosts  # 本地域名解析配置文件
/etc/fstab  # 系统挂载目录,开机自启动挂载列表
/etc/passwd  # 系统所有用户除了密码以外的文件

tmp:系统临时目录(类似于公共厕所),系统会定时删除该目录下长时间没有访问的文件。

var:存放一些变化文件,如下
mysql:          /var/lib/mysql
vsftpd:         /var/ftp
mail:           /var/spool/mail
cron:           /var/spool/cron
log:            /var/log 系统日志文件存放目录
                /var/log/messages系统日志
                /var/log/secure系统登录日志
/var/tmp        临时文件(主要是程序产生的临时文件)

文件管理基本命令

查看当前所在目录:pwd

pwd  # 查看当前所在目录

切换文件夹:cd

cd 文件夹  # 切换文件夹,可以是绝对目录也可以是相对目录
cd ~  # 切到当前用户的家目录,只输入cd与其作用一致
cd -  # 切到上一次的文件夹
cd .  # 切到当前目录
cd ..  # 切到上一级目录

显示文件夹下所有目录:tree

tree 文件夹  # 用树型方式显示此文件夹下的所有目录
tree -a  # 显示所有文件,包括隐藏文件
tree -d  # 只显示子目录
tree -L 1  # 只显示一层子级目录
tree -F  # 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
.文件  # 隐藏文件

详细显示文件夹内的文件信息:ls

ls -l /a/  # 以列表形式显示a文件夹内子文件名的详细信息

ls -l /a/b/1.txt
[-rw-r--r--.] 1 root root 0 6月  23 10:36 /a/b/1.txt

第1个字符
格式       说明
-          普通文件(文本,二进制,压缩包,图片,日志等) 
d          目录文件
l          链接文件

2-4字符:属主对其的权限
5-7字符:属组对其的权限
8-10字符:其他人对其的权限
r:读  w:写  x:执行

10个字符后是否加.号:是否是在selinux模式下创建
1:硬链接个数
root:属主
root:属组
0:文件大小,单位字节
6月  23 10:36:文件修改时间
/a/b/1.txt:文件绝对路径

ls -dl /a  # 查看a文件夹的详细信息

创建文件:touch

touch 1.txt  # 在当前文件夹内创建1.txt文件,相对路径
touch /home/egon/aaa.txt  # 在egon文件夹内创建aaa.txt,绝对路径
touch /home/egon/{1..9}.txt  # 在egon文件夹内创建名字为1到9的9个文本文件
touch /home/egon/{1..9}{a..c}.txt  # 在egon文件夹内创建名字为1a到9a,1b到9b,1c到9c的文本文件

创建文件夹:mkdir

mkdir /aaa  # 在根文件夹内创建aaa文件夹mkdir -p /aaa/bbb/ccc  # 用递归的方法依次创建aaa,bbb,cccmkdir /aaa/{x,y}  # 在aaa文件夹内创建x文件夹和y文件夹mkdir /mmm /nnn  # 在根文件夹内创建mmm和nnn文件夹

复制文件:cp

cp /etc/passwd /home/  # 将etc文件夹内的passwd拷贝到home文件夹内cp -r /etc/ /home/  # -r代表递归着拷贝,将etc文件夹内的子文件夹的子文件夹等等全部拷贝到home文件夹内# 复制粘贴touch /a/1.txttouch /b/1.txtcp /a/1.txt /b/  # 如果遇到同名文件,提示,选择y后直接覆盖,源文件依旧存在

移动文件:mv

# 剪切touch /a/1.txttouch /b/1.txtmv /a/1.txt /b/  # 如果遇到同名文件,提示,选择y后直接将a文件夹内的1.txt移动到b文件夹,将之前的1.txt覆盖掉,源文件存在于b文件夹mv /xxx/yyy/ /test/  # 将xxx文件夹内的yyy文件夹移动到test文件夹内mv /xxx/yyy/* /test/  # 将xxx文件夹内的yyy文件夹内所有的子文件全部移动到test内

删除文件:rm

rm -f /xxx/  # -f表示强制执行,强制删除/xxx文件夹rm -f /xxx/yyy/  # 将文件夹yyy删除rm -f /xxx/yyy/*  # 将文件夹yyy内所有子文件删除'''rm命令尽量少用,可以用mv代替'''mv /xxx/1.txt /tmp/  # 将1.txt文件移到回收站内

查看文件内容

cat
cat -n  # 在显示内容前面标记行数cat -A  # 每一行末尾加上$,意思是提醒你有个换行符
less
可以用上下键进行翻页,按q退出
more
在文件比较大的情况下使用,用空格翻页
默认查看前十行head -3  # 查看文件的前三行
tail
默认查看后十行tail -3  # 查看文件的后三行tail -f  # 动态监测文件新追加的内容echo 111 >> /root/1.txt  # >>表示追加,将输出的111追加到1.txt文件内
grep
grep "root" /etc/passwd  # 在passwd文件中挑出带有root的整行pa aux | grep bash  # 在当前进程中找到包含bash的程序

文本编辑器:vim

vim的操作模式

1.命令模式按a,i,o进入编辑模式按a,写的内容在光标后面按i,写的内容在光标前按o,光标移到下一行按O,光标移到上一行2.编辑模式按esc进入命令模式3.末行模式按esc进入命令模式按冒号开始输入命令

vim编辑器的快捷键

1.命令模式中:$  # 跳到本行末尾0  # 跳到本行开头yy  # 复制本行内容2yy  # 复制本行以及往下共两行内容p  # 粘贴内容插入到光标的下一行P  # 粘贴内容插入到光标的上一行u  # 撤销本次操作ctrl+r  # 取消撤销本次操作dd  # 剪切本行内容2dd  # 剪切本行以及往下共两行内容G  # 光标移到这个文件的最后一行的第一个字符3G  # 光标移动到这个文件第三行的第一个字符gg  # 光标移到这个文件的第一行的第一个字符H  # 光标移到屏幕最上方那一行的第一个字符M  # 光标移到屏幕*那一行的第一个字符L  # 光标移到屏幕最下方那一行的第一个字符hjkl  # 依次分别可以让光标往左、下、上、右移动2.末行模式中::3  # 进入这个文件的第三行:w  # 保存:q  # 退出    :wq  # 保存并退出      :w!  # 强制保存    :q!  # 不保存并退出       :wq!  # 强制保存退出:x  # 保存并退出
上一篇:AMiner会议论文推荐第四十八期


下一篇:动态卷积超进化!通道融合替换注意力,减少75%参数量且性能显著提升 | ICLR 2021