1. sed
Feature
对文本进行查看,新增,删除,修改和替换
Format
sed [option] [pattern] [file]
option
-n: 只显示修改的[pattern], 不真正对[file]修改
-i: 对[file]进行修改
-e: 一次执行多次[pattern]
pattern
- 行范围p(print)
sed -n '2p' user.txt #只查看新打印的第二行
sed '1,2p' user.txt #查看新打印的第一第二行以及整个文本, 新打印的第一/二行紧接着在原第一/二行后显示
- 行范围a(append后插)
sed '7a 7' user.txt #查看在第7行新增的第8行以及整个文本内容
- 行范围i(insert前插)
- 行范围d(delete)删除所指定的行
sed '2d' user.txt
- 行范围s(字符串)/旧字符/新字符/g
sed '2s/old/new/g' user.txt
- 行范围c(数字)
sed '7c 9 ma M 30' user.txt
修改前
修改后
2. xargs
Feature
将标准输入转换为命令行参数
Format
xargs [-options] [command]
Example
bjobs | awk '{print $1}' | grep -v JOBID | xargs bkill #管道将前面的输出转为下一个命令的输入参数
3. awk
Feature
依次对每行进行操作
Format
awk '{pattern + action}' <file>
Example
grep m user.txt | awk '{"username is "$2}' #双引号里是字符串