我在Linux中尝试了grep -v '^$',但没有起作用。此文件来自Windows文件系统。
发布于 2010-08-08 08:17:13
尝试以下操作:
grep -v -e '^$' foo.txt-e选项允许匹配正则表达式模式。
^$前后的单引号使其适用于Cshell。其他shell会喜欢使用单引号或双引号。
更新:这适用于包含空白行或“全空白”的文件(例如带有"\r\n“样式行结尾的windows行),而上面只删除具有空白行和unix样式行结尾的文件:
grep -v -e '^[[:space:]]*$' foo.txt发布于 2015-12-28 19:55:06
保持简单。
grep . filename.txt发布于 2010-08-08 09:10:41
使用:
$ dos2unix file
$ grep -v "^$" file或者只是简单的awk:
awk 'NF' file如果您没有dos2unix,那么可以使用诸如tr之类的工具
tr -d '\r' < "$file" > t ; mv t "$file"https://stackoverflow.com/questions/3432555
复制相似问题