本篇內(nèi)容介紹了“Linux系統(tǒng)怎么刪除文件中的空行”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
本篇內(nèi)容介紹了“Linux系統(tǒng)怎么刪除文件中的空行”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),班戈企業(yè)網(wǎng)站建設(shè),班戈品牌網(wǎng)站建設(shè),網(wǎng)站定制,班戈網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,班戈網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
下列 5 種方法可以做到。
sed:過濾和替換文本的流編輯器。
grep:輸出匹配到的行。
cat:合并文件并打印內(nèi)容到標準輸出。
tr:替換或刪除字符。
awk:awk 工具用于執(zhí)行 awk 語言編寫的程序,專門用于文本處理。
perl:Perl 是一種用于處理文本的編程語言。
我創(chuàng)建了一個 2daygeek.txt 文件來測試這些命令。下面是文件的內(nèi)容。$ cat 2daygeek.txt2daygeek.com is a best Linux blog to learn Linux. It's FIVE years old blog. This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0. He got two GIRL babys. Her names are Tanisha & Renusha.
現(xiàn)在一切就緒,我們準備開始用多種方法來驗證。使用 sed 命令
sed 是一個流編輯器stream editor。流編輯器是用來編輯輸入流(文件或管道)中的文本的。$ sed '/^$/d' 2daygeek.txt2daygeek.com is a best Linux blog to learn Linux.It's FIVE years old blog.This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0.He got two GIRL babes.Her names are Tanisha & Renusha.
以下是命令展開的細節(jié):
sed: 該命令本身。
//: 標記匹配范圍。
^: 匹配字符串開頭。
$: 匹配字符串結(jié)尾。
d: 刪除匹配的字符串。
2daygeek.txt: 源文件名。使用 grep 命令
grep 可以通過正則表達式在文件中搜索。該表達式可以是一行或多行空行分割的字符,grep 會打印所有匹配的內(nèi)容。$ grep . 2daygeek.txtor$ grep -Ev "^$" 2daygeek.txtor$ grep -v -e '^$' 2daygeek.txt2daygeek.com is a best Linux blog to learn Linux.It's FIVE years old blog.This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0.He got two GIRL babes.Her names are Tanisha & Renusha.
以下是命令展開的細節(jié):
grep: 該命令本身。
.: 替換任意字符。
^: 匹配字符串開頭。
$: 匹配字符串結(jié)尾。
E: 使用擴展正則匹配模式。
e: 使用常規(guī)正則匹配模式。
v: 反向匹配。
2daygeek.txt: 源文件名。使用 awk 命令
awk 可以執(zhí)行使用 awk 語言寫的腳本,大多是專用于處理文本的。awk 腳本是一系列 awk 命令和正則的組合。$ awk NF 2daygeek.txtor$ awk '!/^$/' 2daygeek.txtor$ awk '/./' 2daygeek.txt2daygeek.com is a best Linux blog to learn Linux.It's FIVE years old blog.This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0.He got two GIRL babes.Her names are Tanisha & Renusha.
以下是命令展開的細節(jié):
awk: 該命令本身。
//: 標記匹配范圍。
^: 匹配字符串開頭。
$: 匹配字符串結(jié)尾。
.: 匹配任意字符。
!: 刪除匹配的字符串。
2daygeek.txt: 源文件名。使用 cat 和 tr 命令 組合
cat 是串聯(lián)(拼接)concatenate的簡寫。經(jīng)常用于在 Linux 中讀取一個文件的內(nèi)容。
cat 是在類 Unix 系統(tǒng)中使用頻率很高的命令之一。它提供了常用的三個處理文本文件的功能:顯示文件內(nèi)容、將多個文件拼接成一個,以及創(chuàng)建一個新文件。
tr 可以將標準輸入中的字符轉(zhuǎn)換,壓縮或刪除,然后重定向到標準輸出。$ cat 2daygeek.txt | tr -s '\n'2daygeek.com is a best Linux blog to learn Linux.It's FIVE years old blog.This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0.He got two GIRL babes.Her names are Tanisha & Renusha.
以下是命令展開的細節(jié):
cat: cat 命令本身。
tr: tr 命令本身。
|: 管道符號。它可以將前面的命令的標準輸出作為下一個命令的標準輸入。
s: 替換標數(shù)據(jù)集中任意多個重復(fù)字符為一個。
\n: 添加一個新的換行。
2daygeek.txt: 源文件名。使用 perl 命令
Perl 表示實用的提取和報告語言Practical Extraction and Reporting Language。Perl 在初期被設(shè)計為一個專用于文本處理的編程語言,現(xiàn)在已擴展應(yīng)用到 Linux 系統(tǒng)管理,網(wǎng)絡(luò)編程和網(wǎng)站開發(fā)等多個領(lǐng)域。$ perl -ne 'print if /\S/' 2daygeek.txt2daygeek.com is a best Linux blog to learn Linux.It's FIVE years old blog.This website is maintained by Magesh M, it's licensed under CC BY-NC 4.0.He got two GIRL babes.Her names are Tanisha & Renusha.
以下是命令展開的細節(jié):
perl: perl 命令。
n: 逐行讀入數(shù)據(jù)。
e: 執(zhí)行某個命令。
print: 打印信息。
if: if 條件分支。
//: 標記匹配范圍。
\S: 匹配任意非空白字符。
2daygeek.txt: 源文件名。