###########################sed命令拼接
\1 打印源数据
ls|awk -F '.' '{print $1}'|sed -r 's#(.*)#\1.jpg#g'
sed
增:
(单行)
a 追加 sed '2a 106,dandan,CSO' oldboy.txt 在第二行追加一行
i 插入 sed '2i 106,dandan,CSO' oldboy.txt 在第二行插入一行
(多行)
sed '2a 106,dandan,CSO\n107,xiaxia,CCO' oldboy.txt
删:
d 删除 sed '2d' oldboy.txt 删除第二行 (默认不加删除全部)
sed '1~2' oldboy.txt 删除1,3,5,7行,2为步长
sed '1,2d' oldboy.txt 删除1到2行
改:
c 按行替换 sed '2c 106,dandan,CSO' oldboy.txt 替换第二行
s 文本替换 sed -i 's###g' oldboy.txt ///#为定界符
g 全局替换的标记
查:
p 打印,必须与-n配合使用
其他:
w 另存---将模式空间中内容另存到一个文件中:sed 'w test.txt' test1.txt(将test1.txt另存为test.txt)
s 替换,一般与g配合,g是全局标志
i 忽略大小写:sed 's#alex#NB#ig' test.txt
e 使文件中的文本变为可执行,如:sed 's#^#ls -l #e' test.txt (test.txt中,可以放文件的绝对路径)
l 打印不可见字符 sed -n 'l' test.txt
y 作用与tr替换类似 sed 'y#abc#ABC#' test.txt
q 退出sed sed '3q' test.txt 打印三行后退出
r 合并文件 sed 'r test1.txt' test.txt 将test1里的文件合并到test里的每一行下面
n 清空模式空间内容,读取下一行
grep取文件中IP地址
grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file.txt
grep -E -o '(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)' file.txt
参数
-r 启用正则表达式
-i 修改文件 (可用作备份,如:sed -i.jpg 's#123#abc#g' 1.txt)
-n 取消默认输出
特殊符号{}
sed -n '2,4{p;=}' test.txt --显示行号
标签:test1,oldboy,笔记,学习,sed,第二行,test,txt From: https://www.cnblogs.com/yeahzxw/p/16846951.html