cat、more、less、head、tail、wc、grep……
一、Linux目录结构
Linux目录结构:是树状目录,默认以 根目录 / 为所有文件,目录的起点
登陆系统后输入 ls -/ 你会看到
那么树状目录就如同下图所示
常见子目录的作用:
/root | 管理员的宿主(家)目录 |
---|---|
/home/xxx | 除root 用户之外的普通用户的家目录 |
/bin | 存放二进制文件,所有用户可执行的命令。实际是个软链接,链接到/usr/bin |
/sbin | 存放二进制文件,只有管理员可执行的管理命令。软链接到/usr/sbin |
/boot | 系统内核、启动文件目录 |
/dev | 存放设备文件(光驱、硬盘等) |
/etc | 存放系统程序和大部分应用程序( rpm、yum安装)的配置文件 |
/var | 存放可以变化的文件,包括各种日志文件 |
/lib | 存放系统程序的动态连接共享库文件( 类似于windows里的DLL文件)。软链接到/usr/lib |
/usr | 存放系统用户工具和程序 |
/media | 可拆卸的媒介挂载点,例如U盘、光驱等 |
/mnt | 用于临时挂载储存设备的目录 |
/opt | 第三方应用程序安装所存放的目录 |
/tmp | 存放系统的临时文件,/tmp目录下的临时文件会被系统定期删除或者关机时自动删除实际上是在访问存在内存中的信息,这些信息用于访问系统。 |
/proc | 包含虚幻的文件,他们实际上并不存在于磁盘上,也不占用任何空间(虽然用ls -l 可以显示它们的大小)当查看这些文件时,实际上是在访问存在内存中的信息,这些信息用于访问系统 |
二、查看文件内容命令
1.cat命令
cat命令时直接显示出整个文件的内容
cat - 文件名
cat命令只适合看一些短小的命令,因为它是直接显示出整个文件的内容,如果打开个非常大的文件,系统就会死机!
假如一个文件内容里面有很多 行 内容(也有空行的存在),那么我们想知道总共有多少行就可以输入下面的命令
cat 文件 - n (文件可以放在-n前面也可以放在后面)
假如我们不想空行也显示行数,那么我们就可以输入下方命令
cat 文件 - b (文件可以放在-n前面也可以放在后面)
假如字符和字符之间有很多空行,我们不想要有那么多空行就可以
cat 文件 - s (就会 ”压缩行距“ 显示整个内容)
如果还想标注行数就可以加个 b
cat 文件 - sb (文件可以放在-n前面也可以放在后面)
2.more命令
查看长文件,我们可以用more命令查看!
以全屏的方式分页显示文件内容
more [选项] 文件名
我们也是可以结合管道符来操作使用
例如:cat /etc/shadow | more
3.less命令
与more命令相同,但扩展功能更多
less [选项] 文件名
4.head和tail命令
head命令 | tail命令 |
---|---|
查看文件开头的一部分内容 | 查看文件结尾的一部分内容 |
head -n 文件名(默认为10行) | tail -n 文件名(默认为10行) |
head -n k 文件名(显示前K行) | tail -n k 文件名(显示最后K行) |
head -n +k 文件名(显示前K行) | tail -n -k 文件名(显示最后K行) |
head -n -k 文件名(显示到最后只剩k行) | tail -n +k 文件名(显示从第k行开始到结尾) |
head和tail的参数必须放在文件名前面才可以正常操作
首先我们先查看一个文件并看有多少行
cat /etc/yum,conf -sb
下面head举例子,接下来我们分别输入
head -n 5 /etc/yum.conf
head -n +5 /etc/yum.conf
head -n -5 /etc/yum.conf
三种结果如下图
下面tail举例子,接下来我们分别输入
tail -n 5 /etc/yum.conf
tail -n -5 /etc/yum.conf
tail -n +5 /etc/yum.conf
三种结果如下图
三、统计文件内容命令
wc命令
统计文件中单词数量等信息
wc [ 选项 ] 文件名
常用命令选项
wc -l :统计行数
wc -w :统计单词个数
wc -c :统计字节数
四、检索和过滤文件内容命令
grep命令
在文件中查找并显示包含指定字符串的行
grep [ 选项 ] 需查找的内容 在指定的文件里找
常用命令选项
查找不论大小写的 this 的信息
grep -i this /etc/yum.conf
查看条件的设置
” ^ a " | 表示以a为开头 |
---|---|
" a $ " | 表示以a为结尾 |
" ^ $ " | 表示空行 |
查找以#为开头的信息
grep "^#" this /etc/yum.conf
查找以1为结尾的信息
grep "1$" /etc/yum.conf
查找 不 以#为开头的信息
grep - v "^#" this /etc/yum.conf
查找 以#为开头的信息 有多少行
grep - c "^#" this /etc/yum.conf
查找 以#为开头的信息以及它所在的行数(第几行)
grep - n "^#" this /etc/yum.conf
显示匹配行和它后面的n行
grep - A n "33" ~/xc04
显示匹配行和它前面的n行
grep - B n "33" ~/xc04
显示匹配行和它前后各n行
grep - C n "33" ~/xc04
可实现多个条件的查找,-e 相当于 or 的意思
grep - e "^a" -e"^2" ~/xc04
找含有ab信息的文件在家目录中(~)
grep -R -w -l "ab" ~
假如想匹配没有空行 从而显示查看信息
grep - v "^$" xc04
扩展:有时候我们我们点开文件查看信息,但是有很多空行,这个命令指令(grep - v "^$" xc04)暂时把空行掩藏
那我们可以用这个命令(grep - v "^$" xc04 > new.xc04)把空行已经不显示的信息重新建立在一个新的文件里(new.xc04),然后在cat查看
五、压缩命令gzip、bzip2命令
制作压缩文件
gzip [ -9 ] 文件名
使用 “-9” 选项可以提高压缩的比率,指令的值可为1(压缩速度最快,最低的压缩质量)至9(最慢的压缩速度,压缩率最高)之间的整数,
其默认值为6(压缩速度和压缩质量较为平衡的值)
bzip2 [ -9 ] 文件名
解开压缩文件
gzip - d
bzip2 - d
gunzip 等价于 gzip -d
bunzip2 等价于 bzip2-d
扩展:
压缩 zip xxx.zip 源文件
解压 unzip xxx.zip - d 指定目录
六、归档tar命令
制作归档文件、释放归档文件
tar 【选项】 归档文件名 源文件或目录
-c | 创建.tar格式的包文件 |
---|---|
-x | 解开.tar格式的包文件 |
-C | 解压时指定释放的目标文件夹 |
-f | 表示使用归档文件 |
-p | 打包时保留文件及目录的权限 |
-P | 打包时保留文件及目录的绝对路径 |
-t | 列表查看包内的文件 |
-v | 输出详细信息 |
-j | 调用bzip2程序进行压缩或解压 |
-z | 调用gzip 程序进行压缩或解压 |
压缩:tar - czvf XXX.tar.gz(文件名) file(文件)/folder(目录)
tar - czvf XXX.tar.bz2 ……
压缩 调用的程序 显示过程 使用归档
解压 tar - xzvf XXX.tar.gz(文件名) -C 指定目录
tar - xjvf XXX.tar.bz2
tar - xf XXX. tar.gz/bz2