文本处理工具
vi 文本编辑器,linux必备的工具
vim 使用方法和vi一样,功能比vi强大,主要我最喜欢它带颜色
vim有三种模式
命令模式:是默认的模式,可以移动光标和粘贴复制
插入模式:修改文本使用的模式
扩展命令模式:保存、退出、搜索等
他们之前的转换是
Esc 命令模式
i 插入模式
shift+: 扩展命令模式
还有很多其他的按键也可以实现,这里写的是我的使用习惯
扩展命令模式下:
w 保存
wq 保存退出
x 保存退出
X 加密
q 退出,不保存
q! 强制退出,不保存
r file 读文件的内容到当前文件中
w file 将当前文件的内容写入到另一个文件
!command 执行命令
r!command 读入命令的输出
/command 查找
set paste 保存复制格式
s/内容/替换内容/修饰符
i 忽略大小写
g 全局替换,默认情况下,每一行只替换第一次出现
gc 全局替换,每次替换前询问
定制vim工作特性
全局:/etc/vimrc
个人:~/.vimrc
扩展命令是当前命令有效 有些其他的没有记录
命令模式
在输入的时候屏幕不打印,所以很需要记忆,我不怎么用
ZZ 保存退出
ZQ不保存退出
^跳到行首第一个非空白的字符
0跳到行首
$跳到行尾
)下一句移动
(上一句移动
}下一段移动
{上一段移动
插入模式就是上下左右删除修改,和平时使用键盘差不多
应为按键实在是太多了就不一一写了
查看文本命令
cat #查看文本内容
hexdump #查看非文本内容
more #可以分页查看文件内容
head #显示文本前或后行内容
tail #查看文件或标准输入的倒数行
文件的操作命令
cut #提取文本文件或者stdin数据的指定列,后面又更好的三剑客替代了
例:[root@centos8 ~]#ifconfig |head -n2 |tail -n1|cut -d" " -f10
192.168.100.100
paste #合并多个文件同行号到一行
例:
[root@centos8 ~]#paste -d":" alpha.log seq.log
a:1
b:2
c:3
d:4
e:5
f:
g:
h:
文本分析工具
wc #用来统计文件的行,单词,字节,字符总数等
例:[root@centos8 ~]#cat test.txt
hello world
it yunwei
it java
[root@centos8 ~]#wc title.txt
3 6 30 title.txt
sort #把整理过的文本显示出来,不改变源文件
例:[root@centos8 data]#df | tr -s " " %|cut -d% -f5|tr -d '[:alpha:]' | sort -n
0001115
15
uniq #命令可以从输入删除前后相同的重复行
例:
[root@centos8 data]#cat test1.txt
ab1c
[root@centos8 data]#cat test2.txt
befc12
[root@centos8 data]#cat test1.txt test2.txt | sort |uniq -u
2aef
diff #比较两个文件的区别
例:
[root@centos8 ~]#cat f1.txt
hello
world
[root@centos8 ~]#cat f2.txt
hello
live
[root@centos8~]# diff test.txt test2.txt
2c2
< world
---
> live