目录
图源菜鸟 https://www.runoob.com/wp-content/uploads/2014/06/d0c50-linux2bfile2bsystem2bhierarchy.jpg
/bin | bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 |
/boot | 存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 |
/dev | dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 |
/etc | 用来存放所有的系统管理所需要的配置文件和子目录。 |
/home | 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 |
/mnt | 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 |
/opt | opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 |
/lib | lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。 |
/root | 该目录为系统管理员,也称作超级权限者的用户主目录。 |
/sbin | 是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 |
/sys | 该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。 |
/tmp | tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 |
/usr | 一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 |
-b | 指定行号指定的方式 |
-n | 列出行号表示的方式 |
-w | 行号栏位的占用的位数 |
-p | 在逻辑定界符处不重新开始计算。 |
用 nl 列出 log2.log 的内容:
[root@vanqiyeah /]# nl log2.log
用 nl 列出 log2.log 的内容,空本行也加上行号:
[root@vanqiyeah /]# nl -b a log2.log
让行号前面自动补上0,统一输出格式:
[root@vanqiyeah /]# nl -b a -n rz log2.log
空行不显示行号:
[root@vanqiyeah /]# nl -b t log2.log
添加的行号在右:
[root@vanqiyeah /]# nl -n rn log2.log
-n <数字> | 定义显示行数 |
-c <数字> | 指定显示头部内容的字符数 |
-v | 总是显示文件名的头信息 |
-q | 不显示文件名的头信息 |
默认显示文件的前10行内容:
- [root@vanqiyeah /]# head -n 10 1.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
指定显示文件的前5行内容:
- [root@vanqiyeah /]# head -n 5 1.txt
- 1
- 2
- 3
- 4
- 5
指定显示文件的前6个字符:
- 3[root@vanqiyeah /]# head -c 6 1.txt
- 1
- 2
- 3
-c | 输出文件尾部的N(N为整数)个字节内容 |
-f | 持续显示文件最新追加的内容 |
-F <N> | 与选项“-follow=name”和“--retry”连用时功能相同 |
-n <N> | 输出文件的尾部N(N位数字)行内容 |
默认显示某个文件尾部的后5行内容:
- [root@vanqiyeah /]# tail -n 5 1.txt
- 6
- 7
- 8
- 9
- 10
指定显示某个文件尾部的后6个字节:
- [root@vanqiyeah /]# tail -c 6 1.txt
-
- 9
- 10
持续刷新显示某个文件尾部的后10行内容:
- [root@vanqiyeah /]# tail -f 1.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-w | 统计单词数 |
-c | 统计字节数 |
-l | 统计行数 |
-m | 统计字符数 |
-L | 显示最长行的长度 |
统计指定文件的单词数量:
- [root@vanqiyeah /]# wc -m 1.txt
- 33 1.txt
统计指定文件的字符数量:
- [root@vanqiyeah /]# wc -m 1.txt
- 21 1.txt
统计指定文件的总行数:
- [root@vanqiyeah /]# wc -l 1.txt
- 11 1.txt
-a | 使用ASCII文字模式 |
-d | 解开压缩文件 |
-f | 强行压缩文件 |
-k | 保留原文件 |
-l | 列出压缩文件的相关信息 |
-c | 把压缩后的文件输出到标准输出设备,不去更动原始文件 |
-r | 递归处理,将指定目录下的所有文件及子目录一并处理 |
-q | 不显示警告信息 |
将指定的文件进行压缩,压缩包默认会以“原文件名.gz”保存到当前工作目录下,原文件会被自动删除:
[root@vanqiyeah /]# gzip van
解压指定的压缩包文件,并显示解压过程。解压后的文件会保存在当前工作目录下,压缩包会被自动删除:
- [root@vanqiyeah /]# gzip -dv van.gz
- van.gz: 44.3% -- replaced with van
将指定的文件进行压缩,但是不删除原文件:
[root@vanqiyeah /]# gzip -k van
显示指定文件的压缩信息:
- [root@vanqiyeah /]# gzip -l van.gz
- compressed uncompressed ratio uncompressed_name
- 894 1494 27.8% van
-c | 将压缩与解压缩的结果送到标准输出 |
-d | 执行解压缩 |
-f | bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,请使用此参数 |
-k | bzip2在压缩或解压缩后,会删除原始的文件。若要保留原始文件,请使用此参数 |
-s | 降低程序执行时内存的使用量 |
-t | 测试.bz2压缩文件的完整性 |
-v | 压缩或解压缩文件时,显示详细的信息 |
-z | 强制执行压缩 |
压缩文件:
[root@vanqiyeah /]# bzip2 van.txt
检查文件完整性:
[root@vanqiyeah /]# bzip2 -t van.txt.bz2
-A | 新增文件到以存在的备份文件 |
-B | 设置区块大小 |
-c | 建立新的备份文件 |
-C <目录> | 仅压缩指定目录里的内容或解压缩到指定目录 |
-d | 记录文件的差别 |
-x | 从归档文件中提取文件 |
-t | 列出备份文件的内容 |
-z | 通过gzip指令压缩/解压缩文件,文件名最好为*.tar.gz |
-Z | 通过compress指令处理备份文件 |
-f<备份文件> | 指定备份文件 |
-v | 显示指令执行过程 |
-r | 添加文件到已经压缩的文件 |
-u | 添加改变了和现有的文件到已经存在的压缩文件 |
-j | 通过bzip2指令压缩/解压缩文件,文件名最好为*.tar.bz2 |
-v | 显示操作过程 |
-l | 文件系统边界设置 |
-k | 保留原有文件不覆盖 |
-m | 保留文件不被覆盖 |
-w | 确认压缩文件的正确性 |
-p | 保留原来的文件权限与属性 |
-P | 使用文件名的绝对路径,不移除文件名称前的“/”号 |
使用gzip压缩格式对某个目录进行打包操作,显示压缩过程,压缩包规范后缀为.tar.gz:
[root@vanqiyeah /]# tar czvf van.tar.gz /etc
使用bzip2压缩格式对某个目录进行打包操作,显示压缩过程,压缩包规范后缀为.tar.bz2:
[root@vanqiyeah /]# tar cjvf van.tar.bz2 /etc
解压某个压缩包到当前工作目录:
[root@vanqiyeah /]# tar xvf van.tar
解压某个压缩包到/etc目录:
[root@vanqiyeah /]# tar xvf van.tar -C /etc
查看某个压缩包内文件信息(无需解压):
[root@vanqiyeah /]# tar tvf van.tar