我有数据集:
file.txt
de
fds
fds
a
sa
1
2
3
1
}
我想删除所有以字符或特殊字符开头的行。所以我的outfile是:
out.txt
1
2
3
1
我可以用'sed'手动完成,但我正在为此寻找合适的命令。
我的代码:
sed -i '/d//g' file.txt
sed -i '/f//g' file.txt
sed -i '/a//g' file.txt
sed -i '/s//g' file.txt
sed -i '/}//g' file.txt
答案 0 :(得分:2)
将grep
-E
选项用于正则表达式(或简称egrep):
grep -E "^[0-9].*" file.txt
答案 1 :(得分:2)
只保留以数字开头的行:
$ sed -i.bak -r '/^[0-9]/!d' filename
或删除以特定字符开头的行:
$ sed -i.bak -r '/^[dfas}]/d' filename