Linux目录和文件管理
一、Linux目录结构
1.树形目录结构
根目录
所有分区、目录、文件等的位置起点
整个树形目录结构中,使用独立的一个“/”表示
2.常见的子目录
/root /bin /boot /dev /etc
3.常见子目录的作用
二、查看及检索文件命令
1.查看文件内容(适用于文件内容较少时)–cat
cat [选项] 文件名
示例:
IP地址和主机名的映射关系
cat /etc/hosts
查看网卡配置信息
cat /etc/redhat-release
查看Linux系统版本
cat /proc/version
2.查看文件内容–more
(支持全屏,分页显示;但最后一页会自动退出)
全屏方式分页显示文件内容
more [选项] 文件名
交互操作方法
按Enter键向下逐行滚动;按空格键向下翻一屏;按b键向上翻一屏;按q键退出
3.查看文件内容–less
(支持全屏,分页显示;按“/”键查找内容;最后一页提示END,不会自动退出)
与more命令相同,但扩展功能更多
less [选项] 文件名
交互操作方法
4.查看文件内容head、tail命令
head命令
用途:查看文件开头的一部分内容(默认为10行)
head -n 文件名 (-n 查看开头多少行)
tail命令
用途:查看文件结尾的少部分内容(默认为10行)
tail -n 文件名 (-n 查看结尾多少行)
tail -f 文件名 (-f 尾部内容动态更新显示,默认10行)
5.统计文件内容–wc
统计文件中的单词数量(word count)等信息
wc [选项] 目标文件
常用命令选项
-l:统计行数
-w:统计单词个数
-c:统计字节数
不加选项时默认统计行数,单词个数,字节数
6.检索并过滤文件内容–grep
在文件中查找并显示包含指定字符串的行
grep [选项] 查找条件 目标文件
常用命令选项
-i:查找时忽略大小写
-v:反转查找,输出与查找条件不相符的行
查找条件设置
要查找的字符串用双引号括起来
“^…”表示以…开头,“……$”表示以……结尾
“^$”表示空行
三、备份及恢复文档命令
1.用于对文件进行压缩和解压缩–gzip
gzip * ######对该目录下所有文件进行压缩
gzip -9 11.txt ####对压缩包进行压缩 -9表示高压缩比
gzip -d 11.txt.gz ####对压缩包进行解压缩
用于对文件进行压缩和解压缩–bzip2(比gzip压缩效率高些)
yum -y install bzip2^c ###centos 7下安装bzip2方法
bzip2 -9 12.txt ###对12.txt 进行压缩变为12.txt.bz2 ,-9表示高压缩比
bzip2 -d 12.txt.bz2 ###12.txt.bz2进行解压缩,-d解压缩
2.上面所指的都是Linux的下压缩和解压缩
还有一种压缩是微软下常用的如XX.zip,这个如何解压缩呢?
[root@localhost opt]#yum -y install unzip ###解压缩
[root@localhost opt]#yum -y install zip ###压缩
[root@localhost opt]#zip -r opt.zip /opt ###将/opt目录压缩成opt.zip压缩文件,放在/opt目录下
[root@localhost opt]#unzip -n opt.zip -d /tmp
###将压缩文件opt.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip目录不覆盖原先的文件
3.用于对目录和文件进行归档–tar
在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用gzip和bzip2命令)以方便节省空间。使用tar命令的同时。选项要加—
-c: 创建 tar格式的包文件 ##常用
-C: 解压时指定释放的目标文件夹 ##常用
-j: 调用bzip2程序进行压缩或解压 ##常用
-p: 打包时保留文件及目录权限
-P: 打包是保留文件及目录的绝对路径
-t: 列表查看包内的文件
-v: 输出详细信息 ##常用
-x: 解开.tar格式的包文件 ##常用
-z: 调用gzip程序进行压缩或解压 ##常用
-f: 文件名,指定的文件名存档 ##常用
#######案例 现在需要将/opt 进行打包压缩 格式为123.tar.bz2,打包文件放到/tmp
tar jcvf /tmp/123.tar.bz2 /opt/
#######案例 现在需要将123.tar.bz2 解压到/tmp目录下
tar jxvf /tmp/123.tar.bz2 -C /tmp
#######案例 现在需要将/opt 进行打包压缩 格式为123.tar.gz,打包文件放到/tmp
tar zcvf /tmp/123.tar.gz /opt/
#######案例 现在需要将123.tar.gz 解压到/tmp目录下
tar zxvf /tmp/123.tar.gz -C /tmp
四、vi文件编辑器命令
1.文本编辑器的作用
创建或修改文本文件;
维护Linux系统中的各种配置文件;
vim是vi文本编辑器的增强版本,可以自动检查语法错误。
2.vi编辑器的三种工作模式
命令模式;输入模式;末行模式
!vi 执行上一次vi的指令(需要绝对路径)
3.vi编辑器中常用命令
vi的3种模式:
<1>命令模式 (vi 文件名,就进入了命令模式。退出命令模式,可以在末行模式中输入q)
可以使用以下命令:
^ :跳至行首 $:跳至行尾
dd:删除一行(其实是剪切) ddp:上下行对调 dw:删除一个单词
u:撤回
yy:复制一行
P:小写的p,将复制的行粘贴在光标所在行的下一行
P:大写的p,将复制的行粘贴在光标所在行的上一行
x:删除光标所在处字符(按着不动,先删光标后面,在删前面) #常用
r:替换光标所在处字符
ZZ:保存退出 ##或者按shift +z+z
<2>输入模式 (i、I、a、A,就进入了编辑模式。退出编辑模式,按ESC退到命令模式)
在此模式下可像在记事本中一样,修改文件内容。
a: 将在光标所在位置之后插入文本(append)
A: 将在光标所在行末插入文本
i: 将在光标所在位置之前插入文本(insert)
I: 将在光标所在行的第一个非空字符前插入文本
# 通常是用来插入#键的
o: 将在光标所在行的下一行开始插入文本(open)
O: 将在光标所在行的上一行开始插入文本
g: 按2次,光标移动到文本首行 补充:5gg:跳至第5行
G: 按1次,光标移动到文本末行
<3>末行模式 (在命令模式中输入shift+冒号,就进入了末行模式。退出编辑模式,按ESC退到命令模式)
可以使用以下命令:
:q退出命令模式
:w保存修改内容
:wq保存退出
:q!不保存退出
:set nu显示行号 set nonu或set nu!去掉行号
:/abc查找abc这个字符,按n查找下一个,按N查找上一个
末行模式文件内容替换
打开新文件或读入其他文件内容