删除列1具有特定数字条目的所有行

我是Unix的新手,我有一个大的csv文件,我想删除列1的值大于1的所有行。

感谢你的帮助。

如果要删除col 1 >1 ,则意味着要保留col 1 <=1 。 因此,这awk会使它:

 awk '$1<=1' file > new_file 

如果你想反其道而行,否定条件:

 awk '!($1>1)' file > new_file 

根据Jaypal的建议,您可能会遇到需要指出字段分隔符的情况。 如果是这样,用-F参数来做:

 awk -F"," '$1<=1' file > new_file # field separator is , awk -F";" '$1<=1' file > new_file # field separator is ;