方法一:利用grep
grep -v '^\s*$' test.txt
注:-v表示將匹配的結果進行反轉,正則表達式匹配空行。(空行可包括空格符制表符等空白字符)
方法二:利用sed
sed '/^\s*$/d' test.txt
注:d代表刪除該行
方法三:利用awk
awk NF test.txt
注:NF代表當前行的字段數,空行的話字段數為0,被awk解釋為假,因此不進行輸出。
以上三種方式均可處理包含空白字符(空格符,制表符等)的空行。
方法四:若空行均由’\n'造成,則還可以利用tr命令去除空行
tr -s '\n' < test.txt
注:-s代表將多個連續的字符壓縮成一個字符,這里是將多個‘\n'壓縮成一個'\n',達到去除空行的效果。
水平有限,如有不當之處,還望指正!