學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > linux讀取文件命令

linux讀取文件命令

時(shí)間: 佳洲1085 分享

linux讀取文件命令

  Linux系統(tǒng)讀取文件內(nèi)容我們可以通過(guò)相關(guān)命令來(lái)實(shí)現(xiàn),下面由學(xué)習(xí)啦小編為大家整理了linux的讀取文件命令的相關(guān)知識(shí),希望對(duì)大家有幫助!

  linux的讀取文件命令總結(jié)

  linux讀取文件命令1.cat 與 tac

  cat的功能是將文件從第一行開(kāi)始連續(xù)的將內(nèi)容輸出在屏幕上。但是cat并不常用,原因是當(dāng)文件大,行數(shù)比較多時(shí),屏幕無(wú)法全部容下時(shí),只能看到一部分內(nèi)容。

  cat語(yǔ)法:cat [-n] 文件名 (-n : 顯示時(shí),連行號(hào)一起輸出)

  tac的功能是將文件從最后一行開(kāi)始倒過(guò)來(lái)將內(nèi)容數(shù)據(jù)輸出到屏幕上。我們可以發(fā)現(xiàn),tac實(shí)際上是cat反過(guò)來(lái)寫(xiě)。這個(gè)命令也不常用。

  tac語(yǔ)法:tac 文件名。

  linux讀取文件命令2.more和less(常用)

  more的功能是將文件從第一行開(kāi)始,根據(jù)輸出窗口的大小,適當(dāng)?shù)妮敵鑫募?nèi)容。當(dāng)一頁(yè)無(wú)法全部輸出時(shí),可以用“回車(chē)鍵”向下翻行,用“空格鍵”向下翻頁(yè)。退出查看頁(yè)面,請(qǐng)按“q”鍵。另外,more還可以配合管道符“|”(pipe)使用,例如:ls -al | more

  more的語(yǔ)法:more 文件名

  Enter 向下n行,需要定義,默認(rèn)為1行;

  Ctrl f 向下滾動(dòng)一屏;

  空格鍵 向下滾動(dòng)一屏;

  Ctrl b 返回上一屏;

  = 輸出當(dāng)前行的行號(hào);

  :f 輸出文件名和當(dāng)前行的行號(hào);

  v 調(diào)用vi編輯器;

  ! 命令 調(diào)用Shell,并執(zhí)行命令;

  q 退出more

  less的功能和more相似,但是使用more無(wú)法向前翻頁(yè),只能向后翻。

  less可以使用【pageup】和【pagedown】鍵進(jìn)行前翻頁(yè)和后翻頁(yè),這樣看起來(lái)更方便。

  less的語(yǔ)法:less 文件名

  less還有一個(gè)功能,可以在文件中進(jìn)行搜索你想找的內(nèi)容,假設(shè)你想在passwd文件中查找有沒(méi)有weblogic字符串,那么你可以這樣來(lái)做:

  [root@redhat etc]# less passwd

  然后輸入:

  /weblogic

  回車(chē)

  此時(shí)如果有weblogic字符串,linux會(huì)把該字符已高亮方式顯示。

  退出查看頁(yè)面,請(qǐng)按“q”鍵。

  linux讀取文件命令3.head和tail

  head和tail通常使用在只需要讀取文件的前幾行或者后幾行的情況下使用。head的功能是顯示文件的前幾行內(nèi)容

  head的語(yǔ)法:head [n number] 文件名 (number 顯示行數(shù))

  tail的功能恰好和head相反,只顯示最后幾行內(nèi)容

  tail的語(yǔ)法:tail [-n number] 文件名

  linux讀取文件命令4.nl

  nl的功能和cat -n一樣,同樣是從第一行輸出全部?jī)?nèi)容,并且把行號(hào)顯示出來(lái)

  nl的語(yǔ)法:nl 文件名

  linux讀取文件命令5.tailf

  tailf命令幾乎等同于tail -f,嚴(yán)格說(shuō)來(lái)應(yīng)該與tail --follow=name更相似些。當(dāng)文件改名之后它也能繼續(xù)跟蹤,特別適合于日志文件的跟蹤(follow the growth of a log file)。與tail -f不同的是,如果文件不增長(zhǎng),它不會(huì)去訪問(wèn)磁盤(pán)文件(It is similar to tail -f but does not access the file when it is not growing. This has the side effect of not updating the access time for the file, so a filesystem flush does not occur periodically when no log activity is happening.)。tailf特別適合那些便攜機(jī)上跟蹤日志文件,因?yàn)樗苁‰姡驗(yàn)闇p少了磁盤(pán)訪問(wèn)嘛(tailf is extremely useful for monitoring log files on a laptop when logging is infrequent and the user desires that the hard disk spin down to conserve battery life.)。tailf命令不是個(gè)腳本,而是一個(gè)用C代碼編譯后的二進(jìn)制執(zhí)行文件,某些Linux安裝之后沒(méi)有這個(gè)命令,本文提供了怎么編譯安裝tailf命令的方法。

  補(bǔ)充:面就談?wù)劧叩膮^(qū)別

  1. tailf 總是從文件開(kāi)頭一點(diǎn)一點(diǎn)的讀, 而tail -f 則是從文件尾部開(kāi)始讀

  2. tailf check文件增長(zhǎng)時(shí),使用的是文件名, 用stat系統(tǒng)調(diào)用;而tail -f 則使用的是已打開(kāi)的文件描述符; 注:tail 也可以做到類(lèi)似跟蹤文件名的效果; 但是tail總是使用fstat系統(tǒng)調(diào)用,而不是stat系統(tǒng)調(diào)用;結(jié)果就是:默認(rèn)情況下,當(dāng)tail的文件被偷偷刪除時(shí),tail是不知道的,而tailf是知道的。

  常用參數(shù)

  格式:tailf logfile

  動(dòng)態(tài)跟蹤日志文件logfile,最初的時(shí)候打印文件的最后10行內(nèi)容。

3625489