Day14 文本处理三剑客

1、文本处理三剑客命令
sed
awk
grep
2、文件查找命令
find

3、上传下载
wget
curl

rz
sz

4、输出与重定向
>
>>

5、字符处理命令
sort排序
uniq去重
cut处理有规律的文本
tr替换
wc统计

6、打包压缩
tar


一 sed
什么是sed?

sed->流式编辑器


为何用sed?
sed 对比 vim
1、sed可以把处理文件的规则事先写好,然后用同一套规则编辑多个文件
而vim只能一个个编辑===》用于用一套规则处理多个文件

2、sed处理文件,一次只处理一行,即同一时间内存中只有文件的一行内容
无论文件多大,都不会对内存造成过大的压力====》用于处理大文件

如何用sed
sed 选项 '规则' 文件


选项:
-n 取消默认输出
-i 把输出到屏幕中的内容(规则处理的结果+默认输出的结果)

规则:定位+命令
定位方式:
行号定位:
sed '1p' a.txt 打印第一行
sed '1,3p' a.txt
sed '3p;5p' a.txt

正则定位
sed '/^egon$/p' a.txt

没有定位代表定位所有行

命令:
d
p
s///gi



sed '1,3s/egon/EGON/' 文件
sed '/^egon/s/egon/EGON/' 文件


二 awk
主要擅长处理有规律的文本,主要用于做一些格式化处理


awk 选项 '规则' 文件路径

选项:
-F: 指定分隔符

规则:定位+命令

定位:
行号定位:
awk -F: 'NR == 3{print $1,$3}' /etc/passwd
awk -F: 'NR >= 3 && NR <=5{print $1,$3}' /etc/passwd
awk -F: 'NR <= 3 || NR >=8{print $1,$3}' test.txt
awk -F: 'NR == 3 || NR ==5 || NR==7{print $1,$3}' test.txt

正则定位
awk -F: '//{print $1,$2}' 文件路径

没有定位代表定位所有行

命令:
{print $n}

sed 选项 '定位+命令' 文件路径
awk -F: '定位+命令' 文件路径


sed 选项 '3,5p' 文件路径

awk -F: 'NR>=3 && NR<=5{print $0}' 文件路径

三 grep
擅长过滤


grep 选项 "过滤规则" 文件

grep -n "root" /etc/passwd # 显示行号

grep -i "" /etc/passwd # 忽略大小写
grep -l 'egon' a.txt # 如果文件中但凡是存在包含egon的行就算过滤成功,会返回文件名






[root@web01 ~]# ps aux |grep 'vim'
root 9825 0.0 0.5 151692 5212 pts/1 S+ 12:05 0:00 vim a.txt
root 10190 0.0 0.0 112724 988 pts/0 R+ 12:30 0:00 grep --color=auto vim
[root@web01 ~]# ps aux |grep '[v]im'
root 9825 0.0 0.5 151692 5212 pts/1 S+ 12:05 0:00 vim a.txt
[root@web01 ~]#
[root@web01 ~]# kill -9 9825




windows
ctrl+alt+delete


C:Usersoldboy>taskkill /F /PID 12080
成功: 已终止 PID 为 12080 的进程。

C:Usersoldboy>tasklist | findstr "WeChat.exe"
WeChat.exe 11412 Console 1 127,836 K

C:Usersoldboy>taskkill /F /PID 11412
成功: 已终止 PID 为 11412 的进程。


原文地址:https://www.cnblogs.com/blackboy666/p/13866154.html