我有一个文本文件,其字段以','符号分隔。我想删除具有“ S”和“ A”等模式的行,并将已删除的行重定向到其他文件,而原始文件不包含已删除的模式。
例如,假设我的文件数据如下:
S,F,T,Y
B,I,J,O
S,O,L,H
R,I,O,P
A,H,K,L
U,I,O,P
A,I,S,U
我将删除这些行,并将其存储在单独的文件中,例如delete.txt
S,F,T,Y
S,O,L,H
A,H,K,L
A,I,S,U
和file.txt包含
B,I,J,O
R,I,O,P
U,I,O,P
我尝试了以下代码
sed -n '/S\|A/p' file.txt > delete.txt
此命令将删除的行撤销到delete.txt,但在file.txt中包含删除的模式
仅2个sed命令一个接一个:
sed -n '/[SA]/p' file.txt > delete.txt
sed -i.bak '/[SA]/d' file.txt
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句