我有一组输出文件,有些文件如下:

133 0.00295 nurse merit respect muslim
134 0.00292 high dangerous reassure full
135 0.00048
136 0.0039  experience darren
137 0.00097 _ _param_ui_control_scripts_save _param_pattern_value
138 0.00292 find director

我想得到以下文件:
133 0.00295 nurse merit respect muslim
134 0.00292 high dangerous reassure full
136 0.0039  experience darren
137 0.00097 _ _param_ui_control_scripts_save _param_pattern_value
138 0.00292 find director

如果第二列后没有任何内容,只想删除该行。我对shell脚本还不太熟悉,怎么做呢?
可能是这个命令的修改?sed '/^$/d'

最佳答案

如果列是空格分隔的,那么检查行是否有两个以上的字段呢?由于NF存储此值,您可以简单地说:

awk 'NF>2' file

对于给定的输入,它返回:
133 0.00295 nurse merit respect muslim
134 0.00292 high dangerous reassure full
136 0.0039  experience darren
137 0.00097 _ _param_ui_control_scripts_save _param_pattern_value
138 0.00292 find director

关于linux - 从文本文件 shell 脚本中删除“空”行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33756062/

10-10 10:39