使用 cat、more 和 less 命令在 Linux 中檢視檔案


引言

在 Linux 中,有時我們不想使用 vi 或 vim 開啟檔案來檢視檔案內容。相反,我們可以使用其他 Linux 命令,例如“cat”、“more”和“less”。根據使用者的需求,可以使用 cat、more 或 less 命令。雖然每個命令都有許多選項或引數,但在本文中,我們將嘗試探索每個命令最常用的選項以及一些示例。我們將從最常用的命令“cat”開始,然後轉向“more”和“less”命令。

“cat”命令

方法 1:檢視檔案的全部內容

假設 Linux 中有一個檔案 [名稱 cat-file.txt],我們想在螢幕上檢視該檔案的全部內容。然後我們可以使用以下命令

示例

$cat cat-file.txt

輸出

Here
is
the content of
the file.
Thanks

方法 2:帶行號檢視檔案的全部內容

示例

$cat –n cat-file.txt

輸出

1  Here
2  is
3  the content of
4  the file.
5  Thanks

我們已經瞭解到,即使檔案有大量資料,cat 命令也會將檔案的所有內容顯示到螢幕上。這可能是 cat 命令的一個限制。讓我們看看另外兩個命令。

“more”命令

現在我們需要一個大檔案來使用 more 命令。讓我們建立一個名為“more.txt”的檔案,其內容是使用者歷史記錄。

$history > more.txt

方法 1:檢視大型檔案的內容

示例

$more more.txt

輸出

1  wireshark --version
2  iw
3  iwconfig
4  iw wlp2s0 list
5  iwlist
6  iwlist  wlp2s0
7  iwlist  wlp2s0 s
8  iw
9  iw | grep -i monitor
10  iw list
11  iwconfig
12  iw wlp2s0 list
13  iw list
14  iw phy0 list
15  iw
16  iw dev phy0 list
17  iw dev wlp2s0 list
18  iwconfig
19  iw phy0 wlp2s0 list
20  iw phy0
21  iw phy0 info
22  iw phy0 list
23  iw list
24  iw phy0 info
25  sudo init 0
26  x11vnc display :0 --forever
27  iwconfig
--More--(3%)

這是“more”命令在一個螢幕上的輸出,它是全部內容的 3%。我們按下“Enter 鍵”,將看到更多檔案內容,如下所示。我們可以使用“空格鍵”來加快閱讀檔案的速度。

輸出

73  sudo kill -9 1136
74  sudo kill -9 1198
75  sudo apt install vim
76  sudo kill -9  2115
77  ps -aux | grep apt
78  sudo kill -9  2721
79  sudo kill -9  2717
80  ps -aux | grep apt
81  sudo apt install vim
82  ps -aux | grep apt
83  sudo apt install vim
84  ps aux | grep -i apt
85  sudo lsof /var/lib/dpkg/lock
86  sudo lsof /var/lib/apt/lists/lock
87  sudo lsof /var/cache/apt/archives/lock
88  sudo kill -9 2749
89  ps aux | grep -i apt
90  sudo apt install vim
91  vim ~/.bashrc
92  echo $SSLKEYLOGFILE
93  source ~/.bashrc
94  echo $SSLKEYLOGFILE
95  cat /home/rian/.ssl-key.log
96  touch /home/rian/.ssl-key.log
97  cat /home/rian/.ssl-key.log
98  sudo add-apt-repository ppa:ubuntu-mozilla-daily/firefox-aurora
99  sudo apt-get update
--More--(13%)

方法 2:檢視多個檔案

示例

$ more more-file1.txt more-file2.txt

輸出

::::::::::::::
more-file1.txt
::::::::::::::
I am more file 1
--More--(Next file: more-file2.txt)

如果我們按 Enter 鍵,就可以看到這兩個檔案。

輸出

::::::::::::::
more-file1.txt
::::::::::::::
I am more file 1
::::::::::::::
more-file2.txt
::::::::::::::
I am more file 2

“less”命令

“less”命令與“more”命令幾乎相似,但它具有更多優點。

方法 1:檢視大型檔案的內容

示例

$less more.txt

輸出

1  wireshark --version
2  iw
3  iwconfig
4  iw wlp2s0 list
5  iwlist
6  iwlist  wlp2s0
7  iwlist  wlp2s0 s
8  iw
9  iw | grep -i monitor
10  iw list
11  iwconfig
12  iw wlp2s0 list
13  iw list
14  iw phy0 list
15  iw
16  iw dev phy0 list
17  iw dev wlp2s0 list
18  iwconfig
19  iw phy0 wlp2s0 list
20  iw phy0
21  iw phy0 info
22  iw phy0 list
23  iw list
24  iw phy0 info
25  sudo init 0
26  x11vnc display :0 --forever
27  iwconfig
more.txt

現在我們可能想知道 more 和 less 命令之間有什麼區別。

因此,一些重要的區別如下:

  • “less”命令比“more”命令快。

  • “less”命令不會像“more”命令那樣讀取檔案的全部內容。

方法 2:帶行號檢視大型檔案的內容

示例

$less –N more.txt

輸出

Same output as last command but with line number.

結論

透過本文,我們學習了 Linux 中三個強大的檔案檢視命令。

此外,我們現在知道,如果檔案很小,可以使用“cat”命令;否則,可以使用“more”或“less”命令。此外,如果檔案大小很大,則使用“less”命令比“more”命令更好,因為“less”命令不會讀取檔案的全部內容,並且速度更快。

更新於:2023年3月29日

1K+ 次瀏覽

啟動您的 職業生涯

完成課程後獲得認證

開始
廣告