我需要删除文本文件中的奇数行以进行下采样.我找到了这个命令,
awk 'NR%2==0' file
但它只打印终端中的奇数行.如何真正go 除它们?
我真的不喜欢偶数或奇数,我希望他们从文件中删除或打印在另一个文件中.这只在终端上打印.
我需要删除文本文件中的奇数行以进行下采样.我找到了这个命令,
awk 'NR%2==0' file
但它只打印终端中的奇数行.如何真正go 除它们?
我真的不喜欢偶数或奇数,我希望他们从文件中删除或打印在另一个文件中.这只在终端上打印.
%
是模数运算符,NR
是当前行号,因此NR%2==0
仅对偶数行为真,并将调用它们的默认规则({ print $0 }
).因此,将啊
的输出重定向到一个新文件:
啊 'NR%2==0' infile > outfile
你可以用塞德
完成同样的事情.devnulls答案展示了如何用GNU 塞德
来做.
keep odd lines
塞德 'n; d' infile > outfile
keep even lines
塞德 '1d; n; d' infile > outfile