Linux目录结构及常用命令(查看、统计、过滤)
一、Linux目录结构
Linux的目录结构是树形目录结构,如下图所示。
根目录:是所有分区、目录、文件等的位置起点,在整个树形目录结构中,使用独立的一个“/”表示。
常见的子目录:
- /root:管理员的宿主(家)目录
- /bin:存放二进制文件,所有用户可执行的命令。实际是个软链接,链接到/usr/bin
- /boot:系统内核、启动文件目录
- /dev:存放设备文件(光驱、硬盘等)
- /etc:存放系统程序和大部分应用程序(rpm、yum安装)的配置文件
- /home:除root用户之外的普通用户的家目录
- /var:存放可以变化的文件,包括各种日志文件
- /user:存放系统用户工具和程序
- /sbin:存放二进制文件,只有管理员可执行的管理命令。软链接到/usr/sbin
- media:可拆卸的媒介挂载点:例如u盘、光驱等
- lib:存放系统程序的动态连接共享库文件(类似于windows里的DLL文件)。软链接到/usr/lib
- opt:第三方应用程序安装所存放的目录
- tmp:存放系统的临时文件,/tmp目录下的临时文件会被系统定期删除或者关机时自动删除
- proc:包含虚幻的文件,他们实际上并不存在于磁盘上,也不占用任何空间(虽然用ls -l可以显示它们的大小)当查看这些文件时,实际上是在访问存在内存中的信息,这些信息用于访问系统。
二、常用命令
1、查看文件内容cat命令
cat命令是直接显示出整个文件的内容
cat 123.txt
cat -n 123.txt
cat -b 123.txt
cat -s 123.txt
补充:
cat 234.txt abc.txt
cat 234.txt abc.txt > abc234.txt
2、查看文件内容more命令
用 more命令查看文件内容时会以全屏方式分页显示文件内容
交互操作方式:
- 按Enter键向下逐行滚动
- 按空格键向下翻一屏
- 按b键向上翻一屏
- 按q键退出
下翻到最后一页后会自动退出,结合管道操作使用时(例如:ls -R/etc | more)无法向上翻页
3、查看文件内容less命令
less命令和more命令相同,但扩展功能更多
==交互操作方法 ==:
- Page Up向上翻页,Page Down向下翻页
- 按“/”键查找内容,“n”下一个内容,“N”上一个内容
- 通过上键和下键方向键可以实现上下逐行滚动
- 其他功能与more命令基本类似
下翻到最后一页后不会自动退出,结合管道操作使用时可以向上翻页。
在这里插入图片描述
4、查看文件内容head、tail命令
head命令查看文件开头的一部分内容(默认为10行)
head -n 文件名 //n为行数
tail命令查看文件结尾的少部分内容(默认为10行)
tail -n 文件名
tail -f 文件名 //跟踪文件尾部内容的动态更新
5、统计文件内容wc命令
wc命令是统计文件中的单词数量(Word Count)等信息
wc -l //统计行数
wc -w //统计单词个数
wc -c //统计字节数
注:不带任何选项的wc命令,默认同时使用-lwc三个选项
6、检索和过滤文件内容grep命令
grep命令是在文件中查找并显示包含指定字符串的行
grep常用命令选项 | 作用 |
---|---|
-i | 查找时不区分大小写 |
-v | 显示不包括匹配文本的所有行(反向查询,反向匹配) |
-c | 只输出匹配到的总行数(不是匹配到的次数) |
-n | 显示匹配行及行号 |
-e | 实现可多个查找条件的匹配,逻辑or关系 |
-E | 支持使用扩展正则表达式,相当于使用egrep命令 |
-o | 精确匹配,即“仅匹配”之意 |
-A n | 显示匹配行和它后面的n行 |
-B n | 显示匹配行和它前面的n行 |
-C n | 显示匹配行和它前后各n行 |
-l | 列出文件内容符合指定的样式的文件名称 |
-w | 只显示全字符合的行 |
查找条件 | 作用 |
---|---|
“^…” | 表示以…开头 |
“…$” | 表示以…结尾 |
“^$” | 表示空行 |
grep -i "^d" 123.txt
grep -v "^d" 123.txt
grep -c "^123" 123.txt
grep -n "^123" 123.txt
grep -i "^d" 123.txt -e -n "^d" 123.txt
grep "^#|[0-9]$" initial-setup-ks.cfg
grep -E "^#|[0-9]$" initial-setup-ks.cfg
grep -o 12 123.txt
grep -A 2 123 123.txt
grep -B 2 123 123.txt
grep -C 2 123 123.txt
grep -l 123 123.txt
grep -R -w 123 /opt
7、压缩、解压缩命令
- gzip、bzip2压缩、解压缩
gzip [-9] 文件名 //压缩
bzip [-9] 文件名 //压缩
gzip -d .gz格式的压缩文件 //解压缩
bzip2 -d .bz2格式的压缩文件 //解压缩
- gunzip、bunzip2解压缩
gunzip 文件名.gz
bunzip2 文件名.bz2
- tar压缩、解压缩
选项 | 作用 |
---|---|
-c | 创建 .tar格式的包文件,一般都带; |
-x | 解开 .tar格式的包文件; |
-v | 输出详细信息(Verbose ),制作tar包或解开tar包时。显示过程; |
-f | 表示使用归档文件,-f这个是tar包。无论制作还是解开都要加; |
-p | 打包时,保留原权限; |
-t | 不解开tar包时,列表查看包内的文件; |
-C | 指定解压的目录,解压时指定释放的目标文件夹; |
-z | 调用gzip程序进行压缩或解压。 |
-j | 调用bzip2程序进行压缩或解压 |
三、总结
- gzip,bzip2 不能进行目录的压缩
- gzip无法保留源文件
- bzip2可以-k保留源文件
- tar可以压缩文件及目录且可以指定解包的位置