目录
Linux目录结构
树形目录结构
根目录
- 所有分区、目录、文件等的位置起点
- 整个树形目录结构中,使用独立的一个“/”表示
常见的子目录
/root:root的家目录 /bin:二进制,命令文件放的位置
/boot:启动文件 /dev:外来的硬件设备 硬盘、光驱、U盘(设备文件)
/etc:配置文件 /home:普通用户的家目录的上层目录
/var:部分日志 /usr:应用程序
/sbin:管理员可执行的管理命令
/var/tmp:临时文件 / var/log:日志文件
根(/)相当于一个人口,文件的总入口,也是唯一入口
查找及检索文件
查看文件内容cat命令
显示出文件的内容
- cat [选项] 文件名
例:
cat -A 文件名:可以查看隐藏字符
cat -n 文件名:显示行号
cat -b 文件名:跳过空行编号
cat -s 文件名:将连续空行压缩成一行
tac [选项] 文件名:倒序看
rev:将同一行的内容逆向显示
查看文件内容more命令
全屏方式分页显示文件内容
- more [选项] 文件名
交互操作
- 按Enter键向下逐行滚动
- 按空格键向下翻一屏
- 按b键向上翻一屏
- 按q键退出
查看文件内容less命令
与more命令相同,但扩展功能更多
- less [选项] 文件名
交互操作方法
- Page Up向上翻页,Page Down向下翻页
- 按“/”键查找内容,“n”下一个内容,“N”上一个内容
- 其他功能与more命令基本类似
查看文件内容head、tail命令
head命令
- 用途:查看文件开头的一部分内容(默认为10行)
- head -n 文件名
head -n -5 1.txt 除去末位五行
中文一个字三个字符
英文一个字母一个字符
tail命令
- 用途:查看文件结尾的少部分内容(默认为10行)
- tail -n 文件名
tail -n 2 1.txt
tail -n +9 1.txt 从第九行开始查看
- tail -f 实时查看后10行 实时更新
- tail -f 9 实时查看后九行
统计文件内容wc命令
统计文件中的单词数量(Word Count)等信息
- wc [选项]... 目标文件...
常用命令选项
- -l:统计行数
- -w:统计单词个数 (tab,空格隔开算作一个单词)
- -c:统计字节数(空格,回车也算作字节数)
检索和过滤文件内容grep命令
在文件中查找并显示包含指定字符串的行
- grep [选项]... 查找条件 目标文件
常用命令选项
- -i:查找时忽略大小写
- -o:只显示匹配的字符
- -v:反转查找,输出与查找条件不相符的行
- -r:递归 快速过滤 不富哦率软连接
- -R:递归 过滤软连接
- -w:把字符串看做单词
- -m:匹配几次后停止
- -n:显示匹配的行号
- -c:统计匹配的行数
- -A:后几行
- -B:前几行
- -C:前后各几行
查找条件
- 要查找的字符以双引号括起来
- “^……”表示以……开头,“……$”表示以……结尾
- “^$”表示空行
备份及恢复文档
压缩命令gzip、bzip2命令
制作压缩文件 - 0-9 压缩级别 数字越大压缩级别越大
- gzip [-9] 文件名...
- bzip2 [-9] 文件名...
解开压缩文件 -d
- gzip -d .gz格式的压缩文件
- bzip2 -d 。bz2格式的压缩文件
常用命令
- -9、-d
压缩命令gunzip、bunzip2命令
gunzip命令 gunzip等价于gzip -d
- gunzip mkfile.gz
- gzip -d mkfile.gz
bunzip2命令
- bzip2和bunzip2命令的用法与gzip、gunzip命令基本相同
归档命令tar命令
制作归档文件、释放归档文件
- tar [选项]... 归档文件名 源文件或目录
- tar [选项]... 归档文件名 [-c 目标目录]
常用命令选项
- -c:建立归档
- -v:显示详细过程
- -f:代表使用归档,tar一定有f
- -z:代表使用gz压缩
- -j:代表使用bzip2压缩
- -C:指定解压目录
- -x:解压归档
- -p:打包是保留文件及目录的权限
- -P:打包时保留文件及目录的绝对经
- -t:列表查看包内的文件(要和f一起使用)
注意事项
1.tar一定要加f选项
2.加了-,f选项在最后,不加无所谓
3.解压时可以不考虑gz还是bzip2
VI文本编辑器
文本编辑器vi命令
文本编辑器的作用
- 创建或修改文本文件
- 维护Linux系统中的各种配置文件
Linux中最常见的文本编辑器
- vi:类UNIX操作系统的默认文本编辑器
- vim:vim文本编辑器(一般简称为vi编辑器)的增强版本
基本操作
- 会进vi编辑器,能出来,保存或不保存
- 会切换三种模式,会编辑
- 会基本复制,粘贴,跳转
- 查找替换
基本格式
vim 选项 文件
vim 文件名不存在 是新建
vim 文件名存在 就是修改
局限性:vim 文件 不能大于内存
vim编辑器的工作模式
三种模式
- 命令模式:移动光标,基本操作
- 输入模式:命令模式下按i、o会切换到输入模式
- 末行模式:命令模式下按英文冒号会切换到末行模式
分辨三种模式
- 命令模式:最后一行为空白
- 输入模式:会有插入提示符
- 末行模式:最后一行会有冒号
输入模式和末行模式之间无法相互转换,必须退回命令模式
不同模式之间的切换
基本操作
命令模式
- yy:复制一行
- 10 yy:复制10行
- p:粘贴下一行
- dd:剪切
- 10dd:剪切10行
- G:跳到最后一行
- gg或1G:跳到第一行
- 数字G:跳到指定行
- x:剪切字符
- $:跳到行尾
- ^:跳到行首
末行模式
- w:保存
- q:退出
- wq:保存并退出
- !:强制
- q!:强制退出
- wq!:强制保存退出
查找内容,然后替换
范围 s/要找的内容/替换的内容/修饰符
范围
. | 当前行 |
1,10 | 1-10行 |
$ | 最后一行 |
% | 全文 |
1 | 第一行 |
$-1 | 倒数第二行 |
s:名字 search 找
///:固定格式
要找的内容:可以使用正则表达式
替换的内容:一定要明确
修饰符
- g:整行修改
- i:忽略大小写
- c:询问是否要修改
%s/^/#g 给全文开头加上#号
%s/^#//g 全文开头的#号去掉
面试题
1.如何将两个文件合并成一个文件
上下合并:cat a b > c
左右合并:paste a b > c
2.我现在有一个文件夹里面有很多文件,请快速过滤出这个文件加下所有含有root字符串的文件
grep -rw 文件夹