文本处理例子

时间:2021-08-16 20:05:04

sed小例子:

sed -i /test/d /file.txt   #删除文件中有关键字“test”的行
sed -i /^$/d test.txt    #删除一个文件中所有空行
sed -i /^#/d test.txt    #删除一个文件所有以"#"开头的行
sed -i s/abc/abcd/g test.txt    #把文件中的abc换成abcd 
sed -i /^abc/d test.txt    #把文件中以abc开头的行删除
sed -i /abc$/d test.txt    #把文件中以abc结尾的行删除
sed -i ':a;N;$!ba;s#\n#,#g' test.txt    #把文件中的回车符替换成逗号
cat test.txt |awk -v RS='' '{gsub("\n"," "); print }'    #把文件中的回车符替换成空格
sed -e 's/,/\n/g' /tmp/monitor_disk.txt    #把逗号替换成换行
sed -i '1,17d' /tmp/monitor_disk.txt    #删除1到17行

 

截取连个关键字之间的字符串:

str="<version>1.1.2</version>"
echo $str |grep -oP '(?<=<version>).+?(?=</version>)'
1.1.2
echo $str |sed -r 's/.*<version>(.*)<\/version>.*/\1/'
1.1.2

 

打印关键字前后的字符串:

str="test=test1"
echo "$str" | cut -d '=' -f 1
test
echo "$str" | cut -d '=' -f 2
test1