玄子Share-目录和文件管理
Linux 目录
在 Linux 系统中,目录可以理解为文件夹,所有文件均在根目录下,有且只有一个根目录
- 根目录简称为
根
- 表现形式为
/
Linux 目录结构
树型目录结构:最顶层:根目录
- root:存放 root 用户
- home:存放普通用户
- 区分用户身份:通过字符终端中的标识符号
#:管理员用户
,$:普通用户
常见子目录的作用
- /root:系统管理员root的宿主目录
- /home:普通用户的宿主目录
- /boot:系统内核、启动文件,镜像文件,初始化配置等文件
- /dev:设备文件
- /etc:配置文件
- /bin:所有用户可执行的命令
- /sbin:管理员可执行的管理命令
- /usr:应用程序
- /var:日志文件等
- /tmp:临时数据文件存放位置
- /opt:业务数据,备份数据文件存放位置
- /proc:Linux系统启动后,生成的
伪目录
,一般存放系统内存,cpu 等临时的实时数据
Linux 文件常用命令
cat-查看文件内容
显示出文件的内容示例
cat [选项] 文件名 … # -n 显示行号
[root@localhost ~]# cat /etc/hosts
[root@localhost ~]# cat /etc/sysconfig/network
[root@localhost ~]# cat /etc/redhat-release /proc/version
more-查看文件内容
全屏方式分页显示文件内容
more [选项] 文件名 …
- 交互操作方法
- 按
Enter
键向下逐行滚动 - 按
空格键
向下翻一屏 - 按
b
键向上翻一屏 - 按
q
键退出
- 按
less-查看文件内容
与 more 命令相同,但扩展功能更多
less [选项] 文件名 …
交互操作方法
Page Up
向上翻页,Page Down
向下翻页- 按
/
键查找内容,n
下一个内容,N
上一个内容 - 按
↑ ↓
方向键逐行滚动 - 其他功能与 more 命令基本类似
head-查看文件开头
查看文件开头的一部分内容(默认为10行)
head 文件名 …
head -n 文件名 …
head -20 文件名 …
- -n 显示行号
tail-查看文件结尾
查看文件结尾的少部分内容(默认为10行)
tail 文件名 …
tail -n 文件名 …
tail -20 文件名 …
tail -f 文件名
tailf 文件名
- -f 追踪文件内容
systemctl restart network.service #重启网络服务
tailf /val/log/message #实时追踪Linux内核与公共日志信息
wc-统计文件内容
统计文件中的单词数量(Word Count)等信息
wc [选项]... 目标文件...
常用命令选项
- -l: 统计行数
- -w:统计单词个数
- -c: 统计字节数(文件大小)
grep-检索和过滤文件内容
在文件中查找并显示包含指定字符串的行
grep [选项]... 查找条件 目标文件
常用命令选项
- -i:查找时忽略大小写
- -n:显示行号
- -v:反向查找,输出与查找条件不相符的行
查找条件设置
- 要查找的字符串以
“”
双引号括起来 ^XX
表示以 XX 开头XX$
表示以 XX 结尾^$
表示空行
gzip-压缩解压缩命令
制作压缩文件,解开压缩文件
gzip [-9] 文件名… # 制作压缩文件
gzip -d .gz格式的压缩文件 # 解开压缩文件
常用命令选项
- -9:压缩比例
- -d:解压缩
- -c:压缩的时候保留源文件加上
>
例如:gzip -c aa >2.gz
bzip2-压缩解压缩命令
制作压缩文件,解开压缩文件
bzip2 [-9] 文件名... # 制作压缩文件
bzip2 -d .bz2格式的压缩文件 # 解开压缩文件
常用命令选项
- -9:压缩比例
- -d:解压缩
- -c:压缩的时候保留源文件加上
>
例如:gzip -c aa >2.gz
gunzip-解压缩命令
gunzip 等价于 gzip -d
gunzip mkfile.gz
gzip -d mkfile.gz
bunzip2-解压缩命令
bunzip2 等价于 bzip2 -d
bunzip2 mkfile.bz2
bzip2 -d mkfile.bz2
tar命令-归档命令
制作归档文件、释放归档文件
tar [选项] ... 归档目标文件名 源文件或目录(相对路径)
tar [选项] ... 归档源文件名 [-C 目标目录]
tar -zcvf /kgc/etc.tar.gz /etc #制作压缩文件
tar -zxvf /kgc/etc.tar.gz -C /kgc2/ #解压压缩文件,到 -C 指定位置
tar -jcvf /kgc/etc.tar.bz2 /etc #制作压缩文件
tar -jxvf /kgc/etc.tar.bz2 -C /kgc2/ #解压压缩文件,到 -C 指定位置
常用命令选项
- -c: 创建 .tar 格式的包文件
- -f:使用归档文件
- -z:调用gzip程序解压或压缩
- -j:调用bzip2程序解压或压缩
- -v:输出详细信息
- -x:释放.tar格式的包文件
- -C:指定解压路径
- -t:列出存档中文件的目录
- -p:展开所有保护信息
- zcvf 创建 .tar.gz 的压缩文件;zxvf 解压 .tar.gz 压缩文件
- jcvf 创建 .tar.bz2 的压缩文件;jxvf 解压 .tar.bz2 压缩文件
- ptvf 在不展开压缩文件情况下,查看压缩文件信息
Linux Vim
文本编辑器
文本编辑器的作用
- 创建或修改文本文件
- 维护Linux系统中的各种配置文件
Linux中最常用的文本编辑器
- vi:类UNIX操作系统的默认文本编辑器
- vim:vim是vi文本编辑器(一般简称为vi编辑器)的增强版本
三种工作模式
- 命令模式
- 输入模式
- 末行模式
模式间切换
[root@localhost ~]# vi 文件名
光标移动
操作类型 | 操作键 | 功能 |
---|---|---|
光标方向移动 | ↑,↓,←,→ | 上、下、左、右 |
翻页 | Page Down或Ctrl+F | 向下翻动一整页内容 |
Page Up或Ctrl+B | 向上翻动一整页内容 | |
行内快速跳转 | Home键或“^”、数字“0” | 跳转至行首 |
End键或“$”键 | 跳转到行尾 | |
行间快速跳转 | 1G或者gg | 跳转到文件的首行 |
G | 跳转到文件的末尾行 | |
#G | 跳转到文件中的第#行 | |
行号显示 | :set nu | 在编辑器中显示行号 |
:set nonu | 取消编辑器中的行号显示 |
复制、粘贴、删除
操作类型 | 操作键 | 功能 |
---|---|---|
删除 | x或Del | 删除光标处的单个字符 |
dd | 删除当前光标所在行 | |
#dd | 删除从光标处开始的#行内容 | |
d^ | 删除当前光标之前到行首的所有字符 | |
d$ | 删除当前光标处到行尾的所有字符 | |
复制 | yy | 复制当前行整行的内容到剪贴板 |
#yy | 复制从光标处开始的#行内容 | |
粘贴 | p | 将缓冲区中的内容粘贴到光标位置处之后 |
P | 粘贴到光标位置处之前 |
插入
操作符 | 功能 |
---|---|
i | 在当前光标位置之前插入 |
I | 在光标所在行的行首插入 |
a | 在当前光标位置之后插入 |
A | 在光标所在行的行尾插入 |
o | 在光标所在行的下方插入 |
O | 在光标所在行的上方插入 |
文件内容查找
操作键 | 功能 |
---|---|
/word | 从上而下在文件中查找字符串“word” |
?word | 从下而上在文件中查找字符串“word” |
n | 定位下一个匹配的被查找字符串 |
N | 定位上一个匹配的被查找字符串 |
:noshlsearch | 取消高亮区 |
撤销编辑及保存退出
操作键 | 功能 |
---|---|
u | 按一次取消最近的一次操作 多次重复按u键,恢复已进行的多步操作 |
U | 用于取消对当前行所做的所有编辑 |
ZZ | 保存当前的文件内容并退出vi编辑器 |
保存文件及退出编辑器
功能 | 命令 | 备注 |
---|---|---|
保存文件 | :w | 保存修改的内容 |
:w /root/newfile | 另存为其它文件 | |
退出vi | :q | 未修改退出 |
:q! | 放弃对文件内容的修改,并退出vi | |
保存文件退出 vi | :wq 或 :x | 保存修改的内容并退出 |
强制保存退出 | :wq! | 文件被修改或编辑,强制保存退出(仅管理员可用) |
:wq 强制性写入文件并退出。 即使文件没有被修改也强制写入,并更新文件的修改时间
:x 写入文件并退出。 仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间
打开新文件或读入其他文件内容
命令 | 功能 |
---|---|
:e ~/install.log | 打开新的文件进行编辑 |
:r /etc/filesystems | 在当前文件中读入其他文件内容 |
末行模式的基本操作
操作类型 | 命令 | 功能 |
---|---|---|
行号显示 | :set nu | 在编辑器中显示行号 |
:set nonu | 取消编辑器中的行号显示 | |
搜索高亮 | :noh | 取消搜索高亮 |
文件内容替换
命令 | 功能 |
---|---|
😒 /old/new | 将当前行中查找到的第一个字符“old” 串替换为“new” |
😒 /old/new/g | 将当前行中查找到的所有字符串“old” 替换为“new” |
:#,# s/old/new/g | 在行号“#,#”范围内替换所有的字符串“old”为“new” |
:% s/old/new/g | 在整个文件范围内替换所有的字符串“old”为“new” |
😒 /old/new/c | 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认 |
玄子Share-目录和文件管理