第二章:Linux目录和文件管理
一、目录结构
1、树形目录结构
1.1、“/”根目录:
①所有分区、目录。文件等的位置起点
②整个树形目录结构中,使用独立的一个“/”表示
2、常见的子目录
序号 | 目录名称 | 说明 | 备注 |
---|---|---|---|
1 | /root | 管理员的宿主(家)目录 | |
2 | /home/xxx | 普通用户的家目录 | |
3 | /bin | 命令文件目录,存放所有用户可执行的命令 | |
4 | /sbin | 管理员操作目录,存放只有管理员可执行的管理命令 | |
5 | /boot | 系统内核、启动文件目录 | |
6 | /dev | 存放设备文件(光驱。硬盘等) | |
7 | /etc | 存放系统程序和大部分应用程序(rpm/yum安装)的配置文件(一般以.conf、.ini) | 实验环境常用 |
8 | /var | 存放可以变化的文件,包括各种日志文件 (/var/log) | 生产环境常用 |
9 | /自由 | 存放系统程序的动态连接共享库文件 (类似于Windows里的DLL文件) | |
10 | /usr | 存放系统用户工具和程序 | 生产环境常用 |
11 | /媒体 | 可拆卸的媒介挂载点,例如U盘。光驱等 | |
12 | /proc | 存放映射系统信息的文件 | |
13 | /mnt | 用于临时挂载存储设备的目录 (不要放重要文件) | 实验环境常用 |
14 | /opt | 第三方应用程序安装所存放的目录 | 实验环境常用 |
15 | /tmp | 存放系统的临时文件 |
二、查看及检索文件
1、查看文件内容-cat
1.1基本格式:cat +选项+文件名
1.2示例:
[root@xiaowang my-dir]# ls
1.txt 2.txt 3.txt
[root@xiaowang my-dir]# echo "hello word">>1.txt
[root@xiaowang my-dir]# cat 1.txt
hello word
1.3常用选项:
选项 | 说明 |
---|---|
cat -n | 对所有输出的行进行编号 |
cat -b | 对于空白行不进行编号 |
cat -s | 将所有的连续的多个空行替换为一个空行 |
1.4属性:只能读不能写,也就是只能查看,不能修改,全量展示
2、查看文件内容-more
2.1基本格式:
more+选项+文件名——全屏方式分页显示文件内容
2.2交互操作方法
键位 | 说明 |
---|---|
Enter键 | 向下逐行滚动 |
空格键 | 向下翻一屏 |
b键 | 向上翻一屏 |
q键 | 退出 |
注意:下翻到最后一页会自动退出
结合管道操作使用时(例如:ls -R /etc |more)无法向上翻页
3、查看文件内容 -head/tail/less
3.1 head命令
用途:查看文件开头的一部分内容(默认10行)
基本格式:head -n +文件名——n为行数
选项 | 说明 |
---|---|
head +文件A | 默认查看文件A的前 10 行 |
head -n +5 +文件A | 指定查看显示文件A前5行 |
head -n +行号 +文件A | 从指定行号开始显示文件A内容 |
head +文件A +文件B | 依次显示文件A、文件B的开头部分 |
head -R +目录A | 递归地显示目录A及其子目录中的文件开头部分 |
head -c +100 +文件A | 显示文件A的前 100 个字节 |
3.2 tail命令
用途:查看文件结尾的少部分内容(默认为10行),常用语查看日志文件
基本格式:tail +[选项]+ 文件名
选项 | 说明 |
---|---|
tail -n+数字 +文件A | 显示文件A的最后 mum 行 |
tail -f +文件A | 实时显示文件A的最后几行,当文件A有新的内容追加时,会立即显示,停止实施监控,按Ctrl+C结束 |
tail -F +文件A | 类似于 -f,但在文件不存在时会退出 |
tail -n +start-end +文件A | 显示文件A的特定行范围 |
3.3 less命令
属性:与more命令相同,但扩展功能更多
基本格式:less +选项 +文件名
交互操作方法:
键位 | 说明 |
---|---|
Page Up键 | 向上翻页 |
Page Down键 | 向下翻页 |
“/”键 | 查找内容 |
“n”/“N” | 下一个内容/上一个内容 |
↑和↓ | 上下逐行滚动 |
注意:
①下翻到最后一页不会自动退出
②结合管道操作使用可以向上翻页
4、检索和过滤文件内容-grep☆
4.1 属性:在文件中查找并显示包含指定字符串的行, 处理对象是文件、处理单位是行
4.2 基本格式:grep +选项 +查找条件 +目标文件
4.3 常用命令选项(正则表达式中三剑客之一)
选项 | 说明 |
---|---|
grep -i | 查找时不区分大小写,加不加都一样 |
grep -v | 显示不包含匹配文本的的所有行(反向查询,反向匹配) |
grep -n | 显示匹配行及行号 |
grep -c | 只输出匹配到的总行数 |
grep -e | 实现可多个查找条件的匹配,逻辑or关系 |
grep -E | 支持使用扩展正则表达式,相当于使用egrep命令 |
grep -o | 只提取关键字次数,而不是输出行,以行为过滤条件 |
4.4 查找条件设置——要查找的字符串用双引号括起来
条件 | 说明 |
---|---|
“^……” | 表示以……开头 |
“……$” | 表示以……结尾 |
“^$” | 表示空行 |
4.5示例:grep -ie“^listen" -e “80$” /etc/httpd/conf/httpd.conf
man cat |grep -v “^$”
三、压缩及解压缩文件
1、压缩命令-gzip/bzip2
1.1 制作压缩文件
gzip +【-9】+文件名——默认扩展名为".gz",原始文件不在保留
bzip2 【-9】 +文件名——默认扩展名为“.bz2”,原始文件不在保留
1.2 解开压缩文件
gzip -d .gz——解开.gz格式的压缩文件
bzip2 -d .bz2——解开.bz2格式的压缩文件
1.3 常用命令选项
选项 | 说明 |
---|---|
gzip +【-9】+文件名 | 提高压缩比 |
bzip2 -d | 用于解压缩以及压缩过的文件,相当于gunzip、bunzip2 |
gunzip +文件名.gz | 解开.gz格式的压缩文件 |
bunzip2 +文件名.bz2 | 解开.bz2格式的压缩文件 |
1.4 区别
bzip2:压缩的文件小,但是速度比较慢
gzip:文件压缩效率比较低,也就是文件比较大,但是速度比较快
2、压缩与创建归档文件——tar
2.1属性:tar 调用压缩与解压缩的工具,源文件不会被删除
2.2常用选项:
选项 | 说明 |
---|---|
tar -c | 创建.tar格式的包文件 |
tar -x | 解开.tar格式的包文件 |
tar -C | 解压时指定释放的目标文件夹(绝对路径) |
tar -v | 输出详细信息(verbose) |
tar -j | 调用bzip2程序进行压缩或解压 |
tar -z | 调用gzip程序进行压缩或解压 |
2.3示例:
①tar -zcvf dntest.tar.gz 123.txt——打包
②tar -zxvf dntest.tar.gz -C /opt/dnteest——解压缩到指定位置
③tar -jcvf usershow.tar.bz2 passwd shadow——打包
④tar -jxvf usershow.tar.bz2 -C /opt/——解压缩到指定位置
四、vim文本编辑器
1、文本编辑器vi命令
1.1文本编辑器的作用
①创建或修改文本文件
②维护Linux系统中的各种配置文件
1.2Linux中最常用的文本编辑器
①vi——类UNIX操作系统的默认文本编辑器
②vim——vim是vi文本编辑器(一般简称vi编辑器)的增强版本
1.3vi编辑器的工作模式
1.3.1三种工作模式
命令模式、输入模式、末行模式
1.3.2不同模式之间的切换
1.3.3命令模式的基本操作
①光标移动
②复制、粘贴、删除
③文件内容查找
④撤销编辑及保存退出
1.3.4末行模式的基本操作
①保存文件及退出vi编辑器
②打开新文件或读入其他文件内容
③文件内容替换