在Linux中查看文件并過濾空行的多種方法
在 Linux 中查看文件內(nèi)容時過濾掉空行有多種方法,以下是幾種常用的方法:
方法 1:使用 grep
grep -v '^$' filename
-v:反轉(zhuǎn)匹配,只顯示不匹配的行'^$':表示空行的正則表達式(行首后立即為行尾)
要同時過濾掉僅含空格或制表符的行:
grep -v '^[[:space:]]*$' filename
方法 2:使用 sed
sed '/^$/d' filename
/^$/d:刪除空行(d 表示 delete)
要同時過濾掉空白字符行:
sed '/^[[:space:]]*$/d' filename
方法 3:使用 awk
awk 'NF' filename
NF:表示"字段數(shù)量",當行內(nèi)容為空時,NF=0,評估為假,因此不打印
顯示行號:
awk 'NF {print NR, $0}' filename
方法 4:使用 cat + grep
cat -s filename | grep -v '^$'
-s:壓縮連續(xù)的空白行為單行(但不會完全刪除)
方法 5:使用 printf 或 echo 測試
# 測試字符串 printf "Line1\n\nLine3\n" | grep -v '^$' # 輸出結果: # Line1 # Line3
高級技巧:保留格式同時過濾空行
帶行號顯示
grep -n '[^[:space:]]' filename | grep -v '^[[:space:]]*$'
處理多文件
grep -v '^$' file1 file2 file3
編輯文件時刪除空行
# 使用 sed 原地編輯 sed -i '/^[[:space:]]*$/d' filename # 安全備份版本 sed -i.bak '/^[[:space:]]*$/d' filename
統(tǒng)計非空行數(shù)
grep -c '[^[:space:]]' filename
處理特殊文件
# 處理 Windows 格式文件(CRLF) grep -v $'^[[:space:]]*\r$' windows_file.txt # 處理 tab 分隔文件 awk -F'\t' 'NF > 0' tab_file.tsv
永久配置忽略空行
編輯 .bashrc 添加別名:
# 添加到 ~/.bashrc
alias nlcat="awk 'NF {print NR, \$0}'"
alias nocat="grep -v '^[[:space:]]*$'"
重新加載配置:
source ~/.bashrc
使用別名:
nocat filename # 顯示無空行文件 nlcat filename # 帶行號顯示無空行文件
實際應用示例
假設有文件 example.txt 內(nèi)容:
First line Second line with space after: Third line with tab Last line
使用高級過濾:
grep -v '^[[:space:]]*$' example.txt
輸出:
First line Second line with space after: Third line with tab Last line
這些方法可以根據(jù)具體需求選擇使用,grep -v '^$' 是最簡單常用的方法,而 grep -v '^[[:space:]]*$' 或 awk 'NF' 則更全面,能夠過濾掉所有空白行。
到此這篇關于在Linux中查看文件并過濾空行的多種方法的文章就介紹到這了,更多相關Linux查看文件并過濾空行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決linux遠程拷貝報錯not?a?regular?file問題
這篇文章主要介紹了解決linux遠程拷貝報錯not?a?regular?file問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
CentOs 7.3中搭建RabbitMQ 3.6單機多實例服務的步驟與使用
這篇文章主要給大家介紹了關于CentOs 7.3中搭建RabbitMQ 3.6單機多實例服務的步驟與使用的相關資料,文中將實現(xiàn)的方法介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友下面來一起看看吧。2018-03-03
Linux中切換用戶出現(xiàn)bash-4.2$問題解決
這篇文章主要給大家介紹了關于Linux中切換用戶出現(xiàn)bash-4.2$問題解決的相關資料,我們需要進行一個復盤,只有發(fā)生問題,才能嘗試著去解決問題,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2023-11-11
Apache安裝后出現(xiàn)服務無法啟動(服務里啟動出現(xiàn)錯誤代碼1)
很多朋友都遇到過這樣的問題Apache安裝后,顯示安裝成功,但是出現(xiàn)服務無法啟動服務里啟動出現(xiàn)錯誤代碼1,怎么解決這個問題呢,下面小編通過本文給大家詳細介紹下,需要的朋友參考下吧2021-08-08

