目录
cat
标准输入和输出
重定向
分页查看
head
tail
tr
seq
cut
sort
uniq
wc
grep
正则表达式
paste
split 分割文件
压缩,解压缩
tar
vim编辑器
vim的三种模式
cat
cat 查看文件的内容
格式:cat [选项] 文件名
cat只能看普通文件,如文本文件诸如此类
缺点:如果内容过多会显示不全
选项: -A 显示隐藏字符
-n 显示行号
-b 跳过空白行编号
-s 压缩空行
file可以查看文件类型
tac 反向查看文件的内容
echo 将同一行逆向显示
hexdump 查看硬件设备的内容
标准输入和输出
标准输入:你输入的指令
标准输出:电脑反馈给您的信息
错误输出:电脑的一些报错信息
默认是显示在屏幕上
重定向
重定向:重新定义标准输出方向
> 一个箭头是覆盖
>> 两个箭头是追加
如何合并两个文件
cat a b > c 上下合并
paste a b > c 左右合并
分页查看
more 和 less
more
格式:more [选项] 文件名
基本操作:1.空格 下一页 到行末后自动退出
2.回车 一行
3.q 退出
less
格式:less [选项] 文件名
基本操作: / 关键字 进行搜索 大小写敏感 n 向下 N 向上
head
head 可以显示文件或标准输入的前面行
格式: head [选项] [文件]
head -n 数字 文件名 看文件的前数字行
head -c 数字 取指定数字的字符
head -n -数字 去掉最后数字行
tail
tail 和head相反查看文件或标准输入的倒数行
格式:tail [选项] [文件]
常用选项: -f 跟踪显示文件fd新追加的内容,常用于日志监控 后十行 tailf = tail -f
tail -n 数字 文件名 看文件的后数字行
tail -n +数字 从数字行开始显示
tr
tr 基本格式转换
格式 tr 选项 set1 [set2]
SET 是一组字符串,一般都可按照字面含义理解
tr 1 a 只要出现 1 就替换成 a
选项 -d 删除 tr -d 123 只要出现123 就删除
-s 压缩 如果有连续的相同的字符 ,将其压缩成一个
-c 取反 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII
seq
seq 1-10
列出1-10
seq -s+ 1-10
1+2+3...+10
cut
cut 提取文本文件数据的指定列
格式 cut [选项] [文件] ...
选项 -d 指明分隔符 ,默认是 tab
-f 想要获取的字段 # 想要取的字符 cut -d #:3 取第三个字段
#,#,# 第# ,#,#离散的字段
#-# 第# 到 第 #
也可以混合使用
-c 取字符
sort
sort 排序 把整理过的文本显示在屏幕上,不改变原始文件
选项 -r 倒序显示
-n 按数字大小整理
-t 指定分隔符
-k 指定列
uniq
uniq 去重
uniq [选项] [文件]
-c 显示每行重复出现的次数
-d 仅显示重复过的行
-u 仅不显示重复过的行
wc
wc 统计
统计 行 '单词' 字符数
-l 只统计行
-w 只统计 '单词' (不是最终的单词,以空格隔开的就是一个'单词')
-c 统计字符数
正则表达式: 匹配文件中的字符串(grep awk sed)
通配符:匹配文件的名字(ls find)
grep
grep 过滤文件中感兴趣的行
格式: grep [选项] 表达式 文件名
选项: -i 忽略大小写
-v 反选
-o 只显示匹配的内容
-f 对比两个文件的相同行
-c 只显示匹配的行数
-n 显示行号
-r 递归 不找软连接
找出两个文件中相同的部分
grep -f a文件 b文件
将a文件做为 条件去匹配b文件, 得出a文件和b文件相同的文件
过滤 /etc/passwd 文件中含有 root 关键字的行
正则表达式
. 任意字符
^ 一行的开头
$ 一行的结尾
grep '^root' passwd
匹配passwd中开头是root的行
grep 'root$' passwd
匹配passwd 中结尾是root的行
grep '^root$' passwd
匹配开头是root的结尾是root的 意思就是匹配只要这一行只有root这个单词
grep "^$" passwd
空行
grep -v "^$" passwd
非空行
在某一文件夹中,快速找到所有含有root的字符的文件
grep -r root 文件夹
paste
paste 左右合并
中间默认隔空格
-d : 中间用冒号隔开,别的符号也行
split 分割文件
我有一个10g的文件,怎么分割成小的文件存储?
split -b 100M 文件名
压缩,解压缩
只能对文件进行压缩,不能对文件夹进行压缩
gz bzip2
tar
tar 归档
tar 的语法
tar -f 文件名
建立归档:加- 的话 f一定要放在最后 不加-无所谓
tar zcvf 压缩包的名字(*.tar.gz) 需要压缩的文件
tar -cf 建立归档
tar -xf 解除归档
对选项的顺序有要求的
-f 代表使用tar归档 使用tar 必须带 -f
-c 建立归档文件
-x 解除归档文件
-j 代表使用 bzip2 压缩或解压
-z 代表使用 gzip 压缩或解压
-C 指定解压的目录
-t 不解开压缩包,查看压缩包的内容
-v 显示压缩解压的过程
-p 保留权限
-P 路径
tar本身是没有压缩功能的,要调用压缩功能
vim编辑器
格式: vim 选项 文件
vim 文件不存在是新建,存在则是修改,查看
vi和vim的关系?
vim是vi的升级版
常用选项: +# 打开文件后,让光标处于第#行的行首,+默认行尾
! 打开上一次的文件
+/PATTERN 让光标处于第一个被PATTERN匹配到的行行首 用不多
vim的三种模式
三种模式:命令模式 输入模式 末行模式
命令模式:进入文件时,便是这个模式
行间跳转: 数字 G 跳转到数字行
gg 首行
G 末行
行内跳转: 行首:0 ^
行尾:end $
一个单词一个单词的跳:w
复制:y 复制
yy 复制一行
10 yy 复制10行
粘贴:p 贴在光标下面
P 贴在光标上面
删除:x 删除
d 剪切(删除)
dd 删除一行
10 dd 删除10行
dw 删除一个单词
撤销: u 撤销一次
U 撤销全部
ctrl+r 取消撤销
替换: r 替换
R 进入替换模式
ZZ 保存退出 ZQ 不保存退出
d i (光标要放在花括号上) 删除花括号内的内容
y i (光标要放在括号上) 删除括号内容的内容
命令模式切换其他两种模式:(输入模式和末行模式之间不能相互切换)
输入模式: 使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,当编辑文件完成后按 Esc 键即可返回命令模式
快捷键 | 功能描述 |
---|---|
i | 在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动 |
I | 行首插入命令 |
o | 在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本 |
O | 在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本 |
a | 在当前光标所在位置之后插入随后输入的文本 |
A | 行尾插入命令 |
末行模式
末行模式:文件中的指定内容执行保存、查找或替换等操作。使 Vim 切换到编辑模式的方法是在命令模式状态下按“:”(英文冒号)键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了
查找替换
先查找文件中的内容,然后,替换它
格式: 范围 $ /文章已有内容/替换的内容/修饰符 (/作为分隔符,#也可以作为分隔符,@也许 s s### s@@@)
范围:不写范围,光标当前行
%:全文
#: #号行,#代表数字 例:2,5 2到5行
$: 最后一行
$-1: 倒数第二行
2,$: 2到最后一行
修饰符: i 忽略大小写
g 全局替换,默认情况下,也就是不加修饰符的时候,每一行只替换第一次出现的
c 全局替换,每次替换前询问
给所有行的开头加上#,再去掉
% s /^/#/ % s/^#//
注意:配置文件只有开头的 # 才是注释
目录
cat
标准输入和输出
重定向
分页查看
head
tail
tr
seq
cut
sort
uniq
wc
grep
正则表达式
paste
split 分割文件
压缩,解压缩
tar
vim编辑器
vim的三种模式
cat
cat 查看文件的内容
格式:cat [选项] 文件名
cat只能看普通文件,如文本文件诸如此类
缺点:如果内容过多会显示不全
选项: -A 显示隐藏字符
-n 显示行号
-b 跳过空白行编号
-s 压缩空行
file可以查看文件类型
tac 反向查看文件的内容
echo 将同一行逆向显示
hexdump 查看硬件设备的内容
标准输入和输出
标准输入:你输入的指令
标准输出:电脑反馈给您的信息
错误输出:电脑的一些报错信息
默认是显示在屏幕上
重定向
重定向:重新定义标准输出方向
> 一个箭头是覆盖
>> 两个箭头是追加
如何合并两个文件
cat a b > c 上下合并
paste a b > c 左右合并
分页查看
more 和 less
more
格式:more [选项] 文件名
基本操作:1.空格 下一页 到行末后自动退出
2.回车 一行
3.q 退出
less
格式:less [选项] 文件名
基本操作: / 关键字 进行搜索 大小写敏感 n 向下 N 向上
head
head 可以显示文件或标准输入的前面行
格式: head [选项] [文件]
head -n 数字 文件名 看文件的前数字行
head -c 数字 取指定数字的字符
head -n -数字 去掉最后数字行
tail
tail 和head相反查看文件或标准输入的倒数行
格式:tail [选项] [文件]
常用选项: -f 跟踪显示文件fd新追加的内容,常用于日志监控 后十行 tailf = tail -f
tail -n 数字 文件名 看文件的后数字行
tail -n +数字 从数字行开始显示
tr
tr 基本格式转换
格式 tr 选项 set1 [set2]
SET 是一组字符串,一般都可按照字面含义理解
tr 1 a 只要出现 1 就替换成 a
选项 -d 删除 tr -d 123 只要出现123 就删除
-s 压缩 如果有连续的相同的字符 ,将其压缩成一个
-c 取反 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII
seq
seq 1-10
列出1-10
seq -s+ 1-10
1+2+3...+10
cut
cut 提取文本文件数据的指定列
格式 cut [选项] [文件] ...
选项 -d 指明分隔符 ,默认是 tab
-f 想要获取的字段 # 想要取的字符 cut -d #:3 取第三个字段
#,#,# 第# ,#,#离散的字段
#-# 第# 到 第 #
也可以混合使用
-c 取字符
sort
sort 排序 把整理过的文本显示在屏幕上,不改变原始文件
选项 -r 倒序显示
-n 按数字大小整理
-t 指定分隔符
-k 指定列
uniq
uniq 去重
uniq [选项] [文件]
-c 显示每行重复出现的次数
-d 仅显示重复过的行
-u 仅不显示重复过的行
wc
wc 统计
统计 行 '单词' 字符数
-l 只统计行
-w 只统计 '单词' (不是最终的单词,以空格隔开的就是一个'单词')
-c 统计字符数
正则表达式: 匹配文件中的字符串(grep awk sed)
通配符:匹配文件的名字(ls find)
grep
grep 过滤文件中感兴趣的行
格式: grep [选项] 表达式 文件名
选项: -i 忽略大小写
-v 反选
-o 只显示匹配的内容
-f 对比两个文件的相同行
-c 只显示匹配的行数
-n 显示行号
-r 递归 不找软连接
找出两个文件中相同的部分
grep -f a文件 b文件
将a文件做为 条件去匹配b文件, 得出a文件和b文件相同的文件
过滤 /etc/passwd 文件中含有 root 关键字的行
正则表达式
. 任意字符
^ 一行的开头
$ 一行的结尾
grep '^root' passwd
匹配passwd中开头是root的行
grep 'root$' passwd
匹配passwd 中结尾是root的行
grep '^root$' passwd
匹配开头是root的结尾是root的 意思就是匹配只要这一行只有root这个单词
grep "^$" passwd
空行
grep -v "^$" passwd
非空行
在某一文件夹中,快速找到所有含有root的字符的文件
grep -r root 文件夹
paste
paste 左右合并
中间默认隔空格
-d : 中间用冒号隔开,别的符号也行
split 分割文件
我有一个10g的文件,怎么分割成小的文件存储?
split -b 100M 文件名
压缩,解压缩
只能对文件进行压缩,不能对文件夹进行压缩
gz bzip2
tar
tar 归档
tar 的语法
tar -f 文件名
建立归档:加- 的话 f一定要放在最后 不加-无所谓
tar zcvf 压缩包的名字(*.tar.gz) 需要压缩的文件
tar -cf 建立归档
tar -xf 解除归档
对选项的顺序有要求的
-f 代表使用tar归档 使用tar 必须带 -f
-c 建立归档文件
-x 解除归档文件
-j 代表使用 bzip2 压缩或解压
-z 代表使用 gzip 压缩或解压
-C 指定解压的目录
-t 不解开压缩包,查看压缩包的内容
-v 显示压缩解压的过程
-p 保留权限
-P 路径
tar本身是没有压缩功能的,要调用压缩功能
vim编辑器
格式: vim 选项 文件
vim 文件不存在是新建,存在则是修改,查看
vi和vim的关系?
vim是vi的升级版
常用选项: +# 打开文件后,让光标处于第#行的行首,+默认行尾
! 打开上一次的文件
+/PATTERN 让光标处于第一个被PATTERN匹配到的行行首 用不多
vim的三种模式
三种模式:命令模式 输入模式 末行模式
命令模式:进入文件时,便是这个模式
行间跳转: 数字 G 跳转到数字行
gg 首行
G 末行
行内跳转: 行首:0 ^
行尾:end $
一个单词一个单词的跳:w
复制:y 复制
yy 复制一行
10 yy 复制10行
粘贴:p 贴在光标下面
P 贴在光标上面
删除:x 删除
d 剪切(删除)
dd 删除一行
10 dd 删除10行
dw 删除一个单词
撤销: u 撤销一次
U 撤销全部
ctrl+r 取消撤销
替换: r 替换
R 进入替换模式
ZZ 保存退出 ZQ 不保存退出
d i (光标要放在花括号上) 删除花括号内的内容
y i (光标要放在括号上) 删除括号内容的内容
命令模式切换其他两种模式:(输入模式和末行模式之间不能相互切换)
输入模式: 使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,当编辑文件完成后按 Esc 键即可返回命令模式
快捷键 | 功能描述 |
---|---|
i | 在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动 |
I | 行首插入命令 |
o | 在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本 |
O | 在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本 |
a | 在当前光标所在位置之后插入随后输入的文本 |
A | 行尾插入命令 |
末行模式
末行模式:文件中的指定内容执行保存、查找或替换等操作。使 Vim 切换到编辑模式的方法是在命令模式状态下按“:”(英文冒号)键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了
查找替换
先查找文件中的内容,然后,替换它
格式: 范围 $ /文章已有内容/替换的内容/修饰符 (/作为分隔符,#也可以作为分隔符,@也许 s s### s@@@)
范围:不写范围,光标当前行
%:全文
#: #号行,#代表数字 例:2,5 2到5行
$: 最后一行
$-1: 倒数第二行
2,$: 2到最后一行
修饰符: i 忽略大小写
g 全局替换,默认情况下,也就是不加修饰符的时候,每一行只替换第一次出现的
c 全局替换,每次替换前询问
给所有行的开头加上#,再去掉
% s /^/#/ % s/^#//
注意:配置文件只有开头的 # 才是注释