Linux刪除文件中的空行

相信很多朋友在日常的開發(fā)過程中經(jīng)常要處理一些文本甜熔,其中很重要的一部分就是要刪除文本中的空行仑撞,例如下面的文本( 我現(xiàn)在的開發(fā)環(huán)境是HP-UX 只搁,在Linux環(huán)境同樣適用 )

AAAAA

BBBBB

CCCCC

DDDDD

想要得到的結(jié)果是:

AAAAA
BBBBB
CCCCC
DDDDD

如果想通過命令刪除文本中的空行音比,可以通過下面的命令實(shí)現(xiàn)(本文介紹三種方法):
1.使用grep命令過濾掉文本中為空行的行

grep -vE "^[[:blank:]]*$" filename

解釋上面的命令:
首先grep是一個強(qiáng)大的文本搜索工具,其中選項(xiàng) -v 代表反向匹配( 代表輸出的是不匹配的行 )氢惋,選項(xiàng) -E 代表使用擴(kuò)展正則表達(dá)式洞翩。匹配模式部分中 [:blank:]POSIX字符集,匹配的是空格和制表符明肮,^$ 分別代表匹配文本的開頭和結(jié)尾菱农,[ ] 代表匹配中括號中的任意一個字符缭付,* 代表其前面的字符出現(xiàn)0次或多次柿估,所以將這條命令連起來看就是不輸出那些由空格或制表符開頭并且空格和制表符出現(xiàn)次數(shù)不確定的行,需要注意的是如果文本中的空行不是由空白或者制表符造成的陷猫,而只是在編寫文本時由于輸入換行符造成的秫舌,那這條命令同樣適用。grep雖然無法直接匹配換行符绣檬,但是可以通過grep -E "^$"實(shí)現(xiàn)匹配換行符足陨,所以現(xiàn)在回過頭來看上面的那條命令是不是發(fā)現(xiàn)了它可以過濾掉文本中不管是由什么原因造成的空行。

2.使用awk命令過濾掉文本中為空行的行

awk '!/^[[:blank:]]*$/{print $0}' filename

awk命令實(shí)現(xiàn)的思路和想法與上述grep命令完全一樣娇未,只是語法不同而已

3.使用sed命令刪除文本中的空白行

sed '/^[[:blank:]]*$/d' filename

sed命令實(shí)現(xiàn)原理與上面兩個命令大同小異墨缘,值得一提的就是sed表達(dá)式中的命令d是代表刪除,刪除文件中的空白行

  • 結(jié)尾
    本文中提到了三種去除文本中空行的方法零抬,但是具體問題還應(yīng)具體分析镊讼,如果可以確定文件造成空行的原因就是因?yàn)檩斎霌Q行符導(dǎo)致的那我使用tr -s "\n" < filename照樣可以實(shí)現(xiàn),而且好多文本工具都支持一些比較復(fù)雜的文本操作平夜,就拿UE來說去除文件中的空行就是Ctrl+R 然后勾選正則表達(dá)式蝶棋,然后在“查找”的框中輸入%[ ^t]++^p在“被替換為”的框中什么都不輸入( 如果該框中有其他字符應(yīng)刪除掉所有的字符 ),這樣也可以去掉文件中的空白行忽妒。所以雖然是做同樣的一件事玩裙,但是可以有好多種方法實(shí)現(xiàn),就看你所處的開發(fā)環(huán)境和你更傾向于哪種實(shí)現(xiàn)方式了段直。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吃溅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子鸯檬,更是在濱河造成了極大的恐慌决侈,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,865評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件京闰,死亡現(xiàn)場離奇詭異颜及,居然都是意外死亡甩苛,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評論 3 399
  • 文/潘曉璐 我一進(jìn)店門俏站,熙熙樓的掌柜王于貴愁眉苦臉地迎上來讯蒲,“玉大人,你說我怎么就攤上這事肄扎∧郑” “怎么了?”我有些...
    開封第一講書人閱讀 169,631評論 0 364
  • 文/不壞的土叔 我叫張陵犯祠,是天一觀的道長旭等。 經(jīng)常有香客問我,道長衡载,這世上最難降的妖魔是什么搔耕? 我笑而不...
    開封第一講書人閱讀 60,199評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮痰娱,結(jié)果婚禮上弃榨,老公的妹妹穿的比我還像新娘。我一直安慰自己梨睁,他們只是感情好鲸睛,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,196評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著坡贺,像睡著了一般官辈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上遍坟,一...
    開封第一講書人閱讀 52,793評論 1 314
  • 那天拳亿,我揣著相機(jī)與錄音,去河邊找鬼政鼠。 笑死风瘦,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的公般。 我是一名探鬼主播万搔,決...
    沈念sama閱讀 41,221評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼官帘!你這毒婦竟也來了瞬雹?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,174評論 0 277
  • 序言:老撾萬榮一對情侶失蹤刽虹,失蹤者是張志新(化名)和其女友劉穎酗捌,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,699評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡胖缤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,770評論 3 343
  • 正文 我和宋清朗相戀三年尚镰,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哪廓。...
    茶點(diǎn)故事閱讀 40,918評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡狗唉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出涡真,到底是詐尸還是另有隱情分俯,我是刑警寧澤,帶...
    沈念sama閱讀 36,573評論 5 351
  • 正文 年R本政府宣布哆料,位于F島的核電站缸剪,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏东亦。R本人自食惡果不足惜杏节,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,255評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望讥此。 院中可真熱鬧拢锹,春花似錦谣妻、人聲如沸萄喳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,749評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽他巨。三九已至,卻和暖如春减江,著一層夾襖步出監(jiān)牢的瞬間染突,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,862評論 1 274
  • 我被黑心中介騙來泰國打工辈灼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留份企,地道東北人。 一個月前我還...
    沈念sama閱讀 49,364評論 3 379
  • 正文 我出身青樓巡莹,卻偏偏與公主長得像司志,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子降宅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,926評論 2 361