有時(shí)你會(huì)發(fā)現(xiàn)需要格式化某個(gè)文本文件中的內(nèi)容。比如,該文本文件每行一個(gè)單詞,而任務(wù)是把所有的單詞都放在同一行。當(dāng)然,你可以手工來(lái)做,但沒(méi)人喜歡手工做這么耗時(shí)的工作。而且,這只是一個(gè)例子 – 事實(shí)上的任務(wù)可能千奇百怪。
好在,有一個(gè)命令可以滿足至少一部分的文本格式化的需求。這個(gè)工具就是fmt。本教程將會(huì)討論fmt的基本用法以及它提供的一些主要功能。文中所有的命令和指令都在 Ubuntu 16.04LTS 下經(jīng)過(guò)了測(cè)試。
Linux fmt 命令
fmt命令是一個(gè)簡(jiǎn)單的文本格式化工具,任何人都能在命令行下運(yùn)行它。它的基本語(yǔ)法為:
fmt [-WIDTH] [OPTION]... [FILE]...
它的 man 頁(yè)是這么說(shuō)的:
重新格式化文件中的每一個(gè)段落,將結(jié)果寫(xiě)到標(biāo)準(zhǔn)輸出。選項(xiàng)-WIDTH是--width=DIGITS形式的縮寫(xiě)。
下面這些問(wèn)答方式的例子應(yīng)該能讓你對(duì)fmt的用法有很好的了解。
Q1、如何使用 fmt 來(lái)將文本內(nèi)容格式成同一行?
使用fmt命令的基本形式(省略任何選項(xiàng))就能做到這一點(diǎn)。你只需要將文件名作為參數(shù)傳遞給它。
fmt [file-name]
下面截屏是命令的執(zhí)行結(jié)果:
你可以看到文件中多行內(nèi)容都被格式化成同一行了。請(qǐng)注意,這并不會(huì)修改原文件(file1)。
Q2、如何修改最大行寬?
默認(rèn)情況下,fmt命令產(chǎn)生的輸出中的最大行寬為 75。然而,如果你想的話,可以用-w選項(xiàng)進(jìn)行修改,它接受一個(gè)表示新行寬的數(shù)字作為參數(shù)值。
fmt -w [n] [file-name]
下面這個(gè)例子把行寬削減到了 20:
Q3、如何讓 fmt 突出顯示第一行?
這是通過(guò)讓第一行的縮進(jìn)與眾不同來(lái)實(shí)現(xiàn)的,你可以使用-t選項(xiàng)來(lái)實(shí)現(xiàn)。
fmt -t [file-name]
Q4、如何使用 fmt 拆分長(zhǎng)行?
fmt 命令也能用來(lái)對(duì)長(zhǎng)行進(jìn)行拆分,你可以使用-s選項(xiàng)來(lái)應(yīng)用該功能。
fmt -s [file-name]
下面是一個(gè)例子:
Q5、如何在單詞與單詞之間,句子之間用空格分開(kāi)?
fmt 命令提供了一個(gè)-u選項(xiàng),這會(huì)在單詞與單詞之間用單個(gè)空格分開(kāi),句子之間用兩個(gè)空格分開(kāi)。你可以這樣用:
fmt -u [file-name]
注意,在我們的案例中,這個(gè)功能是默認(rèn)開(kāi)啟的。
總結(jié)
沒(méi)錯(cuò),fmt提供的功能不多,但不代表它的應(yīng)用就不廣泛。因?yàn)槟阌肋h(yuǎn)不知道什么時(shí)候會(huì)用到它。在本教程中,我們已經(jīng)講解了fmt提供的主要選項(xiàng)。若想了解更多細(xì)節(jié),請(qǐng)查看該工具的man 頁(yè)。
-
Linux
+關(guān)注
關(guān)注
87文章
11310瀏覽量
209625
原文標(biāo)題:Linux 的 fmt 命令用法與案例
文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論