Linux目录和文件管理
Linux目录和文件管理
一、Linux目录结构
1、树形目录结构
2、根目录
- 所有分区、目录、文件等的位置
- 整个树形目录结构中,使用独立的一个“/”表示
3、常见的子目录
- /root /bin /boot /dev /etc /home /var /usr /sbin
常见子目录的作用
/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——存放系统的临时文件
/proc——存放映射系统信息的文件。
/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息, 甚至可以通过更改其中某些文件来改变内核的运行状态。
二、查看文件内容
1、查看文件内容-cat
- 直接显示出整个文件的内容(适合比较短小的文件,因为会显示整个文件内容,有可能存在系统崩盘)
- 格式:cat [选项] 文件名...
常用选项
-n∶对所有输出的行数编号
-b∶对于空白行不编号
-s∶将所有的连续的多个空行替换为一个空行
2、查看文件内容-more
- 全屏方式分页显示文件内容,适合长文件
- 格式:more [选项]文件名... 选项基本不使用
交互操作方法
按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向上翻一屏
按q键退出
下翻到最后一页后会自动退出
结合管道操作(例如∶ Is -R/etc|more)无法向上翻页
|:管道符号,作用是将左边执行的命令交付给右边再执行一次
3、查看文件内容-less(与more命令相同,但扩展功能更多)
- 格式:less[选项]文件名...
交互操作方法
Page Up 向上翻页,Page Down 向下翻页
按"/"键查找内容,"n"下一个内容,"N"上一个内容
通过个和l方向键可以实现上下逐行滚动
其他功能与 more 命令基本类似
下翻到最后一页后不会自动退出
结合管道操作使用时可以向上翻页
4、查看文件内容head、tail
(1)head命令
- 用途:查看文件开头的一部分内容,默认行数为10行
- 格式:head -n文件名... // n为行数
(2)tail
- 用途:查看文件结尾的少部分内容,默认行数为10行
- 格式:tail -n 文件名...
tail -f 文件名 // 跟踪文件尾部内容的动态更新
三、统计和检索文件内容
1、统计文件内容-wc
- 统计文件中的单词数量(Word Count)等信息
- 格式:wc[选项]...目标文件...
常用命令选项
-l:统计行数
-w:统计单词个数
-c:统计字节数
注:不带任何选项的wc命令,默认同时使用-lwc三个选项(换行符系统默认也是一个字符)
2、检查和过滤文件内容-grep
- 在文件中查找并显示包含指定字符串的行
- 格式:grep[选项]...查找条件 目标文件
常用命令选项
-i∶查找时不区分大小写
-v∶ 显示不包含匹配文本的所有行(反向查询,反向匹配)
-c∶ 只输出匹配到的总行数(不是匹配到的次数)
-n∶ 显示匹配行及行号
-e∶ 实现可多个查找条件的匹配,逻辑or关系
-E∶ 支持使用扩展正则表达式,相当于使用egrep命令(i要放在e前面)
-o∶精确匹配,即"仅匹配"之意。
-A n∶ 显示匹配后和它后面的n行。
-B n∶ 显示匹配行和它前面的n行。
-C n∶ 匹配行和它前后各n行。
查找条件设置
要查找的字符串以双引号括起来
“^......”表示以......开头,“.......$”表示以.......结尾
“^$”表示空行
四、备份恢复文档
1、压缩命令gzip、bzip2命令
(1)制作压缩文件
- 格式:gzip [-9]文件名...
- 格式:bzip2 [-9]文件名...
- *9为最大压缩,范围是1~9,默认压缩比例为6
(2)解开压缩文件
- 格式:gzip -d .gz格式的压缩文件
- 格式:bzip -d .bz2格式的压缩文件
(3)压缩命令gunzip、bunzip2命令
①、gunzip命令
- gunzip等价于gzip -d
- gunzip mkfile.gz
- gzip -d mkfile.gz
②、bunzip2命令
- bzip2和bunzip2命令用法与gzip、gunzip命令基本相同
2、归档命令-tar
- 常用的方法,bzip与gzip命令会将源文件直接压缩或者解压成新文件,使用tar源文件不会消失,并且会产生一个新的压缩文件
(1)制作归档文件,释放归档文件
- 格式:tar[选项]...归档文件名 源文件或目录
- 格式:tar[选项]...归档文件名[-c 目标目录]
(2)常用命令选项
-c∶ 创建.tar 格式的包文件
-x∶ 解开.tar 格式的包文件
-C∶解压时指定释放的目标文件夹
-f∶ 表示使用归档文件(必须携带,归档文件)
-P∶ 打包时保留文件及目录的权限
-P∶打包时保留文件及目录的绝对路径
-t∶列表查看包内的文件
-v∶ 输出详细信息(Verbose)
-j∶ 调用 bzip2 程序进行压缩或解压
-z∶ 调用 gzip 程序进行压缩或解压。
五、VI文本编辑器
1、文本编辑器vi命令
(1)文本编辑器作用
- 创建或修改文本文件
- 维护Linux系统中的各种配置文件
(2)Linux中最常用的文本编辑器
- vi:LUNIX操作系统的默认文本编辑器
- vim:vim是vi文本编辑器(一般简称vi编辑器)的增强版本
2、vi编辑器的工作模式
(1)三种工作模式
- 命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘则贴文件内容等相关操作
- 输入模式∶该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。处于输入模式时,vi编辑器的最后一行会出现"_- INSERT--"的状态提示信息
- 末行模式∶ 该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号"∶"提示符
(2)不同模式之间的切换
命令模式切换至输入模式
a∶ 在当前光标位置之后插入内容
i∶在当前光标位置之前插入内容
o∶在光标所在行之下插入一个新行内容
0∶在光标所在行之上插入一个新行内容
A∶ 在所在行的行尾插入内容
I∶在所在行的行首插入内容
(3)vi文本编辑器命令与末行模式的基本操作