本篇內容介紹了“Linux系統怎么刪除文件中的空行”的有關(guān)知識,在實(shí)際案例的操作過(guò)程中,不少人都會(huì )遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學(xué)有所成!
下列 5 種方法可以做到。
sed
:過(guò)濾和替換文本的流編輯器。
grep
:輸出匹配到的行。
cat
:合并文件并打印內容到標準輸出。
tr
:替換或刪除字符。
awk
:awk 工具用于執行 awk 語(yǔ)言編寫(xiě)的程序,專(zhuān)門(mén)用于文本處理。
perl
:Perl 是一種用于處理文本的編程語(yǔ)言。
我創(chuàng )建了一個(gè) 2daygeek.txt
文件來(lá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.
現在一切就緒,我們準備開(kāi)始用多種方法來(lái)驗證。
sed
是一個(gè)流編輯器。流編輯器是用來(lái)編輯輸入流(文件或管道)中的文本的。
$ 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.
以下是命令展開(kāi)的細節:
sed
: 該命令本身。
//
: 標記匹配范圍。
^
: 匹配字符串開(kāi)頭。
$
: 匹配字符串結尾。
d
: 刪除匹配的字符串。
2daygeek.txt
: 源文件名。
grep
可以通過(guò)正則表達式在文件中搜索。該表達式可以是一行或多行空行分割的字符,grep
會(huì )打印所有匹配的內容。
$ 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.
以下是命令展開(kāi)的細節:
grep
: 該命令本身。
.
: 替換任意字符。
^
: 匹配字符串開(kāi)頭。
$
: 匹配字符串結尾。
E
: 使用擴展正則匹配模式。
e
: 使用常規正則匹配模式。
v
: 反向匹配。
2daygeek.txt
: 源文件名。
awk
可以執行使用 awk 語(yǔ)言寫(xiě)的腳本,大多是專(zhuān)用于處理文本的。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.
以下是命令展開(kāi)的細節:
awk
: 該命令本身。
//
: 標記匹配范圍。
^
: 匹配字符串開(kāi)頭。
$
: 匹配字符串結尾。
.
: 匹配任意字符。
!
: 刪除匹配的字符串。
2daygeek.txt
: 源文件名。
cat
是串聯(lián)(拼接)的簡(jiǎn)寫(xiě)。經(jīng)常用于在 Linux 中讀取一個(gè)文件的內容。
cat
是在類(lèi) Unix 系統中使用頻率很高的命令之一。它提供了常用的三個(gè)處理文本文件的功能:顯示文件內容、將多個(gè)文件拼接成一個(gè),以及創(chuàng )建一個(gè)新文件。
tr
可以將標準輸入中的字符轉換,壓縮或刪除,然后重定向到標準輸出。
$ 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.
以下是命令展開(kāi)的細節:
cat
: cat 命令本身。
tr
: tr 命令本身。
|
: 管道符號。它可以將前面的命令的標準輸出作為下一個(gè)命令的標準輸入。
s
: 替換標數據集中任意多個(gè)重復字符為一個(gè)。
\n
: 添加一個(gè)新的換行。
2daygeek.txt
: 源文件名。
Perl 表示實(shí)用的提取和報告語(yǔ)言。Perl 在初期被設計為一個(gè)專(zhuān)用于文本處理的編程語(yǔ)言,現在已擴展應用到 Linux 系統管理,網(wǎng)絡(luò )編程和網(wǎng)站開(kāi)發(fā)等多個(gè)領(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.
以下是命令展開(kāi)的細節:
perl
: perl 命令。
n
: 逐行讀入數據。
e
: 執行某個(gè)命令。
print
: 打印信息。
if
: if 條件分支。
//
: 標記匹配范圍。
\S
: 匹配任意非空白字符。
2daygeek.txt
: 源文件名。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站