新聞中心
Linux作為一款主流操作系統(tǒng),其應(yīng)用場景越來越廣泛。相較于Windows,Linux的命令行體驗(yàn)相對更為豐富,而命令行中經(jīng)常需要對文本進(jìn)行格式化處理。不過,Linux中的文本文件中往往有著與Windows不同的換行符,這給格式化處理帶來了一定的困擾。為了能夠在Linux中更為高效地處理文本,下面我們將介紹如何在Linux中去除換行符。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了婺城免費(fèi)建站歡迎大家使用!
1.使用tr命令
tr命令是Linux中一個(gè)非常實(shí)用的命令行工具,可以用來對文本進(jìn)行替換和格式化處理。在去除Linux文本文件中的換行符時(shí),我們可以使用tr命令來實(shí)現(xiàn),具體的代碼如下:
“`bash
cat [file] | tr -d ‘\n’ > [new_file]
“`
其中,[file]表示要處理的文件名,[new_file]表示處理后保存的文件名。通過上述命令,我們可以將[file]中的文本內(nèi)容中所有的換行符都刪除,然后將處理后的結(jié)果輸出到[new_file]中。
2.使用sed命令
sed命令是Linux中一個(gè)非常強(qiáng)大的文本處理工具,通過它我們可以完成對Linux中的文本內(nèi)容進(jìn)行各種復(fù)雜的處理操作。在去除Linux文本文件中的換行符時(shí),我們也可以使用sed命令,具體的代碼如下:
“`bash
sed ‘:a;N;$!ba;s/\n//g’ [file] > [new_file]
“`
其中,[file]表示要處理的文件名,[new_file]表示處理后保存的文件名。上述代碼中的sed命令通過綁定標(biāo)簽、讀取整個(gè)文件、替換換行符等語法來實(shí)現(xiàn)對Linux文本文件中所有的換行符的去除。
3.使用perl命令
perl命令是Linux中一個(gè)非常強(qiáng)大的編程語言,通過它我們可以完成對文本內(nèi)容的各種處理操作,包括去除換行符。具體的代碼如下:
“`bash
perl -pe ‘s/\n//g’ [file] > [new_file]
“`
其中,[file]表示要處理的文件名,[new_file]表示處理后保存的文件名。上述代碼中的perl命令通過正則表達(dá)式,將[file]中的文本內(nèi)容中所有的換行符都刪除,并將處理后的結(jié)果輸出到[new_file]中。
上述三種方法都可以實(shí)現(xiàn)對Linux文本文件中的換行符的去除,并且方法也都比較簡單易用。不過,鑒于每種方法都有其特定的使用場景和限制,我們在實(shí)際應(yīng)用過程中,要根據(jù)具體的情況來選擇相應(yīng)的方法。希望本文所介紹的內(nèi)容能夠?qū)δ阍贚inux命令行下進(jìn)行文本處理時(shí)有所幫助。
相關(guān)問題拓展閱讀:
- linux下怎么實(shí)現(xiàn)回車不換行的顯示
- 在linux配置文件里怎么一行一行刪除?
linux下怎么實(shí)現(xiàn)回車不換行的顯示
通過 管道送到饑清。殲納
tr “\n” ” ”
把回車替換成空爛改前白 這樣就顯示的是一行了。不過你這說法有點(diǎn)模糊,文本處理方法有很多種
在linux配置文件里怎么一行一行刪除?
用vi打開編輯,dd是刪除一行,其他快捷操作有:
光標(biāo)控制命令
命令光標(biāo)移動
h或^h 向左移一個(gè)字符
j或^j或^n 向下移一行
k或^p 向上移一行
l或空格向右移一個(gè)字符
G移到文件的最后一行
nG移到文件的第n行
w移到下一個(gè)字的開頭
W移到下一個(gè)字的開頭侍衫,忽略標(biāo)點(diǎn)符號
b移到前一個(gè)字的開頭
B移到前一個(gè)字的開頭,忽略標(biāo)點(diǎn)符號
L移到屏幕的最后一行
M移到屏幕的中間一行
H移到屏幕的之一行
e移到下一個(gè)字的結(jié)尾
E移到下一個(gè)字的結(jié)尾,忽略標(biāo)點(diǎn)符號
(移到句子的開頭
)移到句子的結(jié)尾
{移到段落的開頭
}移到下一個(gè)段落的開頭
0或|移到當(dāng)前行的之一列
n|移到當(dāng)前行的第n列
^移到當(dāng)前行的之一個(gè)非空字符
$移到當(dāng)前行的最后一個(gè)字符
+或return 移到下一行的之一個(gè)字符
移到前一行的之一個(gè)非空字符
在vi中添加文本
命令插入動作
a在光標(biāo)后插入文本
A在當(dāng)前行插入文本
i在光標(biāo)老瞎腔前插入文本
I在當(dāng)前行前插入文本
o在當(dāng)前行的下邊插入新行
O在當(dāng)前行的上邊插入新行
:r file 讀入文件file內(nèi)容,并插在當(dāng)前行后
:nr file 讀入文件file內(nèi)容,并插在第n行后
escape 回到命令模式
^v char 插入時(shí)忽略char的指定意義,這是為了插入特殊字符
在vi中刪除文本
命令刪除操作
x刪除光標(biāo)處的字符,可以在x前加上需要刪除的字符數(shù)目
nx從當(dāng)前光標(biāo)處神姿往后刪除n個(gè)字符
X刪除光標(biāo)前的字符,可以在X前加上需要刪除的字符數(shù)目
nX從當(dāng)前光標(biāo)處往前刪除n個(gè)字符
dw刪至下一個(gè)字的開頭
ndw從當(dāng)前光標(biāo)處往后刪除n個(gè)字
dG刪除行,直到文件結(jié)束
dd刪除整行
ndd從當(dāng)前行開始往后刪除
db刪除光標(biāo)前面的字
ndb從當(dāng)前行開始往前刪除n字
:n,md 從第m行開始往前刪除n行
d或d$ 從光標(biāo)處刪除到行尾
dcursor_command刪除至光標(biāo)命令處,如dG將從當(dāng)產(chǎn)膽行刪除至文件的末尾
^h或backspace插入時(shí),刪除前面的字符
^w插入時(shí),刪除前面的字
修改vi文本
每個(gè)命令前面的數(shù)字表示該命令重復(fù)的次數(shù)
命令替換操作
rchar 用char替換當(dāng)前字符
R text escape用text替換當(dāng)前字符直到換下Esc鍵
stext escape用text代替當(dāng)前字符
S或cctext escape用text代替整行
cwtext escape將當(dāng)前字改為text
Ctext escape將當(dāng)前行余下的改為text
cG escape 修改至文件的末尾
ccursor_cmd text escape 從當(dāng)前位置處到光標(biāo)命令位置處都改為text
在vi中查找與替換
命令查找與替換操作
/text 在文件中向前查找text
?text 在文件中向后查找text
n在同一方向重復(fù)查找
N在相反方向重復(fù)查找
ftext 在當(dāng)前行向前查找text
Ftext 在當(dāng)前行向后查找text
ttext 在當(dāng)前行向前查找text,并將光標(biāo)定位在text的之一個(gè)字符
Ttext 在當(dāng)前行向后查找text,并將光標(biāo)定位在text的之一個(gè)字符
:set ic 查找時(shí)忽略大小寫
:set noic 查找時(shí)對大小寫敏感
:s/oldtext/newtext用newtext替換oldtext
:m,ns/oldtext/newtext 在m行通過n,用newtext替換oldtext
&重復(fù)最后的:s命令
:g/text1/s/text2/text3 查找包含text1的行,用text3替換text2
:g/text/command在所有包含text的行運(yùn)行command所表示的命令
:v/text/command在所有不包含text的行運(yùn)行command所表示的命令
在vi中復(fù)制文本
命令復(fù)制操作
yy將當(dāng)前行的內(nèi)容放入臨時(shí)緩沖區(qū)
nyy將n行的內(nèi)容放入臨時(shí)緩沖區(qū)
p將臨時(shí)緩沖區(qū)中的文本放入光標(biāo)后
P將臨時(shí)緩沖區(qū)中的文本放入光標(biāo)前
dsfsd “(a-z)nyy復(fù)制n行放入名字為圓括號內(nèi)的可命名緩沖區(qū),省略n表示當(dāng)前行
“(a-z)ndd 刪除n行放入名字為圓括號內(nèi)的可命名緩沖區(qū),省略n表示當(dāng)前行
“(a-z)p 將名字為圓括號的可命名緩沖區(qū)的內(nèi)容放入當(dāng)前行后
“(a-z)P 將名字為圓括號的可命名緩沖區(qū)的內(nèi)容放入當(dāng)前行前
在vi中撤消與重復(fù)
命令撤消操作
u撤消最后一次修改
U撤消當(dāng)前行的所有修改
.重復(fù)最后一次修改
,以相反的方向重復(fù)前面的f、F、t或T查找命令
;重復(fù)前面的f、F、t或T查找命令
“np取回最后第n次的刪除(緩沖區(qū)中存有一定次數(shù)的刪除內(nèi)容,一般為9)
n重復(fù)前面的/或?查找命令
N以相反方向重復(fù)前面的/或?命令
保存文本和退出vi
命令保存和/或退出操作
:w保存文件但不退出vi
:w file 將修改保存在file中但不退出vi
:wq或ZZ或:x保存文件并退出vi
:q!不保存文件,退出vi
:e!放棄所有修改,從上次保存文件開始再編輯
vi中的選項(xiàng)
選項(xiàng)作用
:set all 打印所有選項(xiàng)
:set nooption關(guān)閉option選項(xiàng)
:set nu 每行前打印行號
:set showmode顯示是輸入模式還是替換模式
:set noic 查找時(shí)忽略大小寫
:set list 顯示制表符(^I)和行尾符號
:set ts= 為文本輸入設(shè)置tab stops
:set window=n設(shè)置文本窗口顯示n行
vi的狀態(tài)
選項(xiàng)作用
:.=打印當(dāng)前行的行號
:=打印文件中的行數(shù)
^g顯示文件名、當(dāng)前的行號、文件的總行數(shù)和文件位置的百分比
:l使用字母”l”來顯示許多的特殊字符,如制表符和換行符
在文本中定位段落和放置標(biāo)記
選項(xiàng)作用
{在之一列插入{來定義一個(gè)段落
>>向前移到下一個(gè)段落的開頭處
m(a-z) 用一個(gè)字母來標(biāo)記當(dāng)前位置,如用mz表示標(biāo)記z
‘(a-z) 將光標(biāo)移動到指定的標(biāo)記,如用’z表示移動到z
在vi中連接行
選項(xiàng)作用
J將下一行連接到當(dāng)前行的末尾
nJ連接后面n行
光標(biāo)放置與屏幕調(diào)整
選項(xiàng)作用
H將光標(biāo)移動到屏幕的頂行
nH將光標(biāo)移動到屏幕頂行下的第n行
M將光標(biāo)移動到屏幕的中間
L將光標(biāo)移動到屏幕的底行
nL將光標(biāo)移動到屏幕底行上的第n行
^e(ctrl+e) 將屏幕上滾一行
^y將屏幕下滾一行
^u將屏幕上滾半頁
^d將屏幕下滾半頁
^b將屏幕上滾一頁
^f將屏幕下滾一頁
^l重繪屏幕
z-return 將當(dāng)前行置為屏幕的頂行
nz-return 將當(dāng)前行下的第n行置為屏幕的頂行
z.將當(dāng)前行置為屏幕的中央
nz.將當(dāng)前行上的第n行置為屏幕的中央
z將當(dāng)前行置為屏幕的底行
nz將當(dāng)前行上的第n行置為屏幕的底行
vi中的shell轉(zhuǎn)義命令
選項(xiàng)作用
:!command 執(zhí)行shell的command命令,如:!ls
:!!執(zhí)行前一個(gè)shell命令
:r!command 讀取command命令的輸入并插入,如:r!ls會先執(zhí)行l(wèi)s,然后讀入內(nèi)容
:w!command 將當(dāng)前已編輯文件作為command命令的標(biāo)準(zhǔn)輸入并執(zhí)行command命令,如:w!grep all
:cd directory將當(dāng)前工作目錄更改為directory所表示的目錄
:sh將啟動一個(gè)子shell,使用^d(ctrl+d)返回vi
:so file 在shell程序file中讀入和執(zhí)行命令
vi中的宏與縮寫
(避免使用控制鍵和符號,不要使用字符K、V、g、q、v、*、=和功能鍵)
選項(xiàng)作用
:map key command_seq 定義一個(gè)鍵來運(yùn)行command_seq,如:map e ea,無論什么時(shí)候都可以e移到一個(gè)字的末尾來追加文本
:map在狀態(tài)行顯示所有已定義的宏
:umap key 刪除該鍵的宏
:ab string1 string定義一個(gè)縮寫,使得當(dāng)插入string1時(shí),用string2替換string1。當(dāng)要插入文本時(shí),鍵入string1然后按Esc鍵,系統(tǒng)就插入了string2
:ab顯示所有縮寫
:una string取消string的縮寫
在vi中縮進(jìn)文本
選項(xiàng)作用
^i(ctrl+i)或tab插入文本時(shí),插入移動的寬度,移動寬度是事先定義好的
:set ai 打開自動縮進(jìn)
:set sw=n 將移動寬度設(shè)置為n個(gè)字符
n>使n行都向右移動一個(gè)寬度,例如3>>就將接下來的三行每行都向右移動一個(gè)移動寬度
linux去除換行的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux去除換行,如何在Linux中去除換行符?,linux下怎么實(shí)現(xiàn)回車不換行的顯示,在linux配置文件里怎么一行一行刪除?的信息別忘了在本站進(jìn)行查找喔。
成都網(wǎng)站營銷推廣找創(chuàng)新互聯(lián),全國分站站群網(wǎng)站搭建更好做SEO營銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機(jī)房服務(wù)器托管租用。
文章名稱:如何在Linux中去除換行符? (linux去除換行)
網(wǎng)站路徑:http://www.5511xx.com/article/dhggsei.html


咨詢
建站咨詢
