Linux目录与文件管理
文章目录
Linux目录与文件管理
一.Linux目录结构
■树形目录结构
■根目录:所有分区,目录,文件等位置起点
整个树形目录结构中,使用独立的一个"”表示
■常见的子目录
●/root /bin /boot /dev /etc
●/home /var /usr /sbin
二.查看及检索文件
2.1常见子目录的作用
■/root:系统管理员root的宿主目录
■/home:普通用户的宿主目录
■/boot:系统内核、启动文件
■/dev:设备文件
■/etc:配置文件
■/bin: 所有用户可执行的命令
■/sbin: 管理员可执行的管理命令
■/usr:应用程序
■/var:日志文件等
2.2 查看文件内容more命令
■全屏方式分页显示文件内容
more [选项] 文件名
■交互操作方法
按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向_上翻一-屏
按q键退出
2.3 查看文件内容less命令
■与more 命令相同,但扩展功能更多
less [选项]文件名…
■交互操作方法
●Page Up向上翻页,Page Down向下翻页
●按 "I”键查找内容,"n”下一个内容,"N”. 上一个内容
●其他功能与more命令基本类似
2.4 查看文件内容head、tail命令
■head命令
●用途:查看文件开头的一部分内容(默认为10行)
head -n 文件名…
head -5 文件名
■tail命令
●用途:查看文件结尾的少部分内容(默认为10行)
tail -n 文件名 #查看末尾十行
tail -f 文件名 #动态查看末尾
2.6统计文件内容wc命令
■统计文件中的单词数量(Word Count)等信息
WC [选项] [目标文件]
■常用命令选项
●-|:统计行数
●-W:统计单词个数
●-C:统计字节数
2.7检索和过滤文件内容grep命令
■在文件中查找并显示包含指定字符串的行
grep [选项]… 查找条件 目标文件
■常用命令选项
●-i: 查找时忽略大小写
●-v:反转查找,输出与查找条件不相符的行
■查找条件设置
●要查找的字符串以双引|号括起来
●"^…" 表示…开头,
●"…$" 表示.以… .结尾
●" ^ $ " 表示空行
三.备份恢复文档
3.1 压缩解压缩 zip命令,gzip、bzip2命令
■制作压缩文件、解开压缩文件
● zip命令
zip -r opt.zip /opt #将/opt目录压缩成opt.zip 并放在/opt目录下
unzip -n opt.zip -d /tmp #将压缩文件opt.zip在指定目录/tmp 下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。
● gzip命令
gzip -9 11.txt.gz #对压缩包进行压缩 -9表示高压缩比
gzip -d 11.txt.gz #对压缩包进行解压缩
● bzip2命令
bzip2 -9 12.txt #对12.txt 进行压缩 变为12.txt.bz2 -9表示高压缩比
bzip2 -d 12.txt.bz2 #12.txt.bz2进行解压缩
■常用命令选项
●-9、 -d
-9 压缩 -d解压缩 # 这个要牢记 上面所的都是Linux的下压缩和解压缩
3.2 tar命令
tar 命令主要用于对目录和文件进行归档。在实际的备份工作中,通常在归档的同时也会将包文件
进行压缩(需要调用gzip和bzip2命令)以方便节省空间。使用tar命令的同时。选项如下
-c: 创建 tar格式的包文件 ###常用
-C: 解压时指定释放的目标文件夹 ###常用
-j: 调用bzip2程序进行压缩或解压 ##常用
-p: 打包时保留文件及目录权限
-P: 打包是保留文件及目录的绝对路径
-t: 列表查看包内的文件
-v: 输出详细信息 ##常用
-x: 解开.tar格式的包文件 ##常用
-z: 调用gzip程序进行压缩或解压 ##常用
-f: 文件名,指定的文件名存档 ##常用
#案例 现在需要将/opt 进行打包压缩 格式为123.tar.bz2,打包文件放到/mnt
tar jcvf /mnt/123.tar.bz2 /opt/
#案例 现在需要将123.tar.bz2 解压到/mnt/123目录下
tar jxvf /mnt/123.tar.bz2 -C /mnt/123
#案例 现在需要将/opt 进行打包压缩 格式为123.tar.gz,打包文件放到/mnt
tar zcvf /mnt/123.tar.gz /opt/
#案例 现在需要将123.tar.gz 解压到/mnt/123目录下
tar zxvf /mnt/123.tar.gz -C /mnt/123
三.VI文本编辑器
3.1文本编辑器vi命令
■文本编辑器的作用
●创建或修改文本文件
●维护Linux系统中的各种配置文件
■Linux中最常用的文本编辑器
●vi:类UNIX操作系统的默认文本编辑器
●vim: vim是vi文本编辑器 (- -般简称为vi编辑器)的增强版本
3.2 vi编辑器的工作模式
■三种工作模式
命令模式、输入模式、末行模式
■不同模式之间的切换
3.3 vi的3种模式:
■命令模式 (vi 文件名,就进入了命令模式。退出命令模式,可以在未行模式中输入q)
操作键 | 功能 |
---|---|
dd | 删除一行 |
u | 撤回 |
yy | 复制一行 |
p | 小写的p,将复制的行粘贴在光标所在行的下一行 |
P | 大写的p,将复制的行粘贴在光标所在行的上一行 |
x | 小写的x 删除光标所在处字符(按着不动,先删光标后面,在删前面) |
r | 替换光标所在处字符 |
ZZ | 保存退出(shift + z+z) |
■编辑模式 (i、I、a、A,就进入了编辑模式。退出编辑模式,按ESC退到命令模式)
操作键 | 功能 |
---|---|
a | 将在光标所在位置之后插入文本(append附加) |
A | 将在光标所在行末插入文本 |
i | 将在光标所在位置之前插入文本(insert) |
I | 将在光标所在行的第一个非空字符前插入文本 |
o | 将在光标所在行的下一行开始插入文本(open) |
O | 将在光标所在行的上一行开始插入文本 |
g | 按2次,光标移动到文本首行 |
G | 按1次,光标移动到文本末行 |
■ 末行模式 (在命令模式中输入:就进入了末行模式。退出编辑模式,按ESC退到命令模式)
操作键 | 功能 |
---|---|
:q | 退出命令模式 |
:w保存 | 保存修改内容 |
:wq | 保存退出 |
:q! | 不保存退出 |
:set nu | 显示行号 |
:/abc | 查找abc这个字符,按n查找下一个,按N查找上一个 |
3.4 末行模式的基本操作
■文件内容替换
操作键 | 功能 |
---|---|
: s/old/new | 将当前行中查找到的第一个字符"old" 串替换为 “new” |
: s/old/new/g | 将当前行中查找到的所有字符串"old" 替换为"new" |
: % s/old/new/g | 在整个文件范围内替换所有的字符串"old" 为"new" |
: #,# s/old/new/g | 在行号"#,#" 范围内替换所有的字符串"old" 为"new" |
: s /old/new/c | 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认 |
3.5命令模式的基本操作(1)
■文件内容查找
操作键 | 功能 |
---|---|
/word | 从上而下在文件中查找字符串"word" |
?word | 从下而上在文件中查找字符串"word" |
n | 定位下一个匹配的被查找字符串 |
N | 定位上一个匹配的被查找字符串 |
■撤销编辑及保存退出
操作键 | 功能 |
---|---|
u | 按一次取消最近的一次操作;重复u键,恢复多步操作 |
U | 用于取消对当前行所做的所有编辑 |
ZZ | 保存当前的文件内容并退出vi编辑器 |
3.6 命令模式下的基本操作(2)
命令模式的基本操作
■复制、粘贴、删除
操作键 | 功能 |
---|---|
x或Del | 删除光标处的单个字符 |
dd | 删除当前光标所在行 |
#dd | 删除从光标所在行开始的#行内容 |
d^ | 删除当前光标之前到行首的所有字符 |
d$ | 删除当前光标处到行尾的所有字符 |
yy | 复制当前行整行的内容到剪贴板 |
#yy | 复制从光标所在行开始的#行内容 |
p(小写) | 将缓冲区中的内容粘贴到光标位置处之后 |
P(大写) | 粘贴到光标位置处之前 |
d +$ | 删除当前行光标之后的全部内容 |
3.7 命令模式下的基本操作(3)
■光标移动
操作类型 | 操作键 | 功能 |
---|---|---|
方向移动 | ↑ ,↓,←,→ | 上,下,左,右 |
翻页 | Page Down 或Ctrl + F | 向下翻动一整夜内容 |
翻页 | Page Up 或 Ctrl + B | 向上翻动一整夜内容 |
行内快速跳转 | Home 键 或 “^“. 数字”0” | 跳转时行首 |
行内快速跳转 | End键 或 “$“ | 跳转到行尾 |
行间快速跳转 | 1G 或 gg | 跳转到文件的首行 |
行间快速跳转 | G | 跳转到文件的末尾行 |
行间快速跳转 | #G | 跳转到文件中的第#行 |
行号显示 | :set nu | 在编辑器中显示行号 |
行号显示 | :set nonu或setno! | 取消编辑器中的行号显示 |
四.总结
gzip -9 压缩成.gz格式 ,解压 gzip -d 也只能解压.gz格式的压缩包
bzip2 -9 压缩成 .bz2格式 ,bzip -d 解压也只能解压.bz2格式的压缩包
tar jcvf ls.txt.bz2 ls.txt 压缩ls.txt 成bz2格式存放当前目录命名成ls.txt.bz2
tar jxvf ls.txt.bz2 -C /tmp 解压缩ls.txt.bz2文件,存放到/tmp (-C表示指定解压缩文件存放路径)
tar zcvf ls.txt.gz ls.txt 压缩ls.txt 成gz格式存放当前目录命名成ls.txt.gz
tar zxvf ls.txt.gz -C /tmp 解压缩ls.txt.gz文件,存放到/tmp (-C表示指定解压缩文件存放路径)
tar xvf 不能解压*.zip格式文件