日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

less加管道tail_linux中cat、more、less、tail、head命令的区别

發布時間:2025/3/21 linux 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 less加管道tail_linux中cat、more、less、tail、head命令的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、cat 顯示文件連接文件內容的工具

cat 是一個文本文件(查看)和(連接)工具,通常與more搭配使用,與more不同的是cat可以合并文件。查看一個文件的內容,用cat比較簡單,就是cat后面直接接文件名。

如:root@ubuntu :/# cat /etc/passwd

1、cat 語法結構:

cat [選項] [文件]...

選項

-A, --show-all?????????? 等價于 -vET

-b, --number-nonblank??? 對非空輸出行編號

-e?????????????????????? 等價于 -vE

-E, --show-ends????????? 在每行結束處顯示 $

-n, --number???????????? 對輸出的所有行編號

-s, --squeeze-blank????? 不輸出多行空行

-t?????????????????????? 與 -vT 等價

-T, --show-tabs????????? 將跳格字符顯示為 ^I

-u?????????????????????? (被忽略)

-v, --show-nonprinting?? 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

--help???? 顯示此幫助信息并離開

2、cat 查看文件內容實例:

[root@localhost ~]# cat /etc/profile??? 注:查看/etc/目錄下的profile文件內容;

[root@localhost ~]# cat -b /etc/fstab?? 注:查看/etc/目錄下的profile內容,并且對非空白行進行編號,行號從1開始;

[root@localhost ~]# cat -n /etc/profile??? 注:對/etc目錄中的profile的所有的行(包括空白行)進行編號輸出顯示;

[root@localhost ~]# cat -E /etc/profile???? 注:查看/etc/下的profile內容,并且在每行的結尾處附加$符號;

cat 加參數-n 和nl工具差不多,文件內容輸出的同時,都會在每行前面加上行號;

[root@localhost ~]# cat -n /etc/profile

[root@localhost ~]# nl /etc/profile

cat 可以同時顯示多個文件的內容,比如我們可以在一個cat命令上同時顯示兩個文件的內容;

[root@localhost ~]# cat /etc/fstab /etc/profile

cat 對于內容極大的文件來說,可以通過管道|傳送到more 工具,然后一頁一頁的查看;

[root@localhost ~]# cat /etc/fstab /etc/profile | more

3、cat 的創建、連接文件功能實例:

cat 有創建文件的功能,創建文件后,要以EOF或STOP結束;

[root@localhost ~]# cat > linuxsir.org.txt << EOF 注:創建linuxsir.org.txt文件;

> 我來測試 cat 創建文件,并且為文件輸入內容;?????? 注:這是為linuxsir.org.txt文件輸入內容;

> 北南南北 測試;?????????????????? 注:這是為linuxsir.org.txt文件輸入內容;

> EOF?? 注:退出編輯狀態;

[root@localhost ~]# cat linuxsir.org.txt 注:我們查看一下linuxsir.org.txt文件的內容;

我來測試 cat 創建文件,并且為文件輸入內容;

北南南北 測試;

cat 還有向已存在的文件追加內容的功能;

[root@localhost ~]# cat linuxsir.txt 注:查看已存在的文件linuxsir.txt 內容;

I am BeiNanNanBei From LinuxSir.Org .??? 注:內容行

我正在為cat命令寫文檔

[root@localhost ~]# cat >> linuxsir.txt << EOF?? 注:我們向linuxsir.txt文件追加內容;

> 我來測試cat向文檔追加內容的功能;?????? 注:這是追回的內容

> OK?

> OK~

> 北南 呈上

> EOF?? 注:以EOF退出;

[root@localhost ~]# cat linuxsir.txt 注:查看文件內容,看是否追回成功。

I am BeiNanNanBei From LinuxSir.Org .

我正在為cat命令寫文檔

我來測試cat向文檔追加內容的功能;

OK?

OK~

北南 呈上

cat 連接多個文件的內容并且輸出到一個新文件中;

假設我們有sir01.txt、sir02.tx和sir03.txt ,并且內容如下;

[root@localhost ~]# cat sir01.txt

123456

i am testing

[root@localhost ~]# cat sir02.txt

56789

BeiNan Tested

[root@localhost ~]# cat sir03.txt

09876

linuxsir.org testing

我想通過cat 把sir01.txt、sir02.txt及sir03.txt 三個文件連接在一起(也就是說把這三個文件的內容都接在一起)并輸出到一個新的文件sir04.txt 中。

注意:其原理是把三個文件的內容連接起來,然后創建sir04.txt文件,并且把幾個文件的內容同時寫入sir04.txt中。特別值得一提的是,如果您輸入到一個已經存在的sir04.txt 文件,會把sir04.txt內容清空。

[root@localhost ~]#

cat sir01.txt sir02.txt sir03.txt > sir04.txt

[root@localhost ~]# more sir04.txt

123456

i am testing

56789

BeiNan Tested

09876

linuxsir.org testing

cat 把一個或多個已存在的文件內容,追加到一個已存在的文件中

[root@localhost ~]# cat sir00.txt

linuxsir.org forever

[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt >> sir00.txt

[root@localhost ~]# cat sir00.txt

linuxsir.org forever

123456

i am testing

56789

BeiNan Tested

09876

linuxsir.org testing

警告:我們要知道 > 意思是創建,>> 是追加。千萬不要弄混了。造成失誤可不是鬧著玩的;

二、more 文件內容或輸出查看工具

more 是我們最常用的工具之一,最常用的就是顯示輸出的內容,然后根據窗口的大小進行分頁顯示,然后還能提示文件的百分比;

[root@localhost ~]# more /etc/profile

1、more 的語法、參數和命令:

more [參數選項] [文件]

參數如下:

+num?? 從第num行開始顯示;

-num?? 定義屏幕大小,為num行;

+/pattern?? 從pattern 前兩行開始顯示;

-c?? 從頂部清屏然后顯示;

-d?? 提示Press space to continue, 'q' to quit.(按空格鍵繼續,按q鍵退出),禁用響鈴功能;

-l??? 忽略Ctrl+l (換頁)字符;

-p??? 通過清除窗口而不是滾屏來對文件進行換頁。和-c參數有點相似;

-s??? 把連續的多個空行顯示為一行;

-u??? 把文件內容中的下劃線去掉退出more的動作指令是q

2、more 的參數應用舉例:

[root@localhost ~]# more -dc /etc/profile??? 注:顯示提示,并從終端或控制臺頂部顯示;

[root@localhost ~]# more +4 /etc/profile????? 注:從profile的第4行開始顯示;

[root@localhost ~]# more -4 /etc/profile????? 注:每屏顯示4行;

[root@localhost ~]# more +/MAIL /etc/profile???? 注:從profile中的第一個MAIL單詞的前兩行開始顯示;

3、more 的動作指令:

我們查看一個內容較大的文件時,要用到more的動作指令,比如ctrl+f(或空格鍵) 是向下顯示一屏,ctrl+b是返回上一屏; Enter鍵可以向下滾動顯示n行,要通過定,默認為1行;

我們只說幾個常用的; 自己嘗試一下就知道了;

Enter?????? 向下n行,需要定義,默認為1行;

Ctrl+f??? 向下滾動一屏;

空格鍵????????? 向下滾動一屏;

Ctrl+b? 返回上一屏;

=???????? 輸出當前行的行號;

:f????? 輸出文件名和當前行的行號;

v????? 調用vi編輯器;

! 命令??????????? 調用Shell,并執行命令;

q???? 退出more當我們查看某一文件時,想調用vi來編輯它,不要忘記了v動作指令,這是比較方便的;

4、其它命令通過管道和more結合的運用例子:

比如我們列一個目錄下的文件,由于內容太多,我們應該學會用more來分頁顯示。這得和管道 | 結合起來,比如:

[root@localhost ~]# ls -l /etc |more

三、less 查看文件內容 工具

less 工具也是對文件或其它輸出進行分頁顯示的工具,應該說是linux正統查看文件內容的工具,功能極其強大;您是初學者,我建議您用less。由于less的內容太多,我們把最常用的介紹一下;

1、less的語法格式:

less [參數] 文件

常用參數

-c 從頂部(從上到下)刷新屏幕,并顯示文件內容。而不是通過底部滾動完成刷新;

-f 強制打開文件,二進制文件顯示時,不提示警告;

-i 搜索時忽略大小寫;除非搜索串中包含大寫字母;

-I 搜索時忽略大小寫,除非搜索串中包含小寫字母;

-m 顯示讀取文件的百分比;

-M 顯法讀取文件的百分比、行號及總行數;

-N 在每行前輸出行號;

-p pattern 搜索pattern;比如在/etc/profile搜索單詞MAIL,就用 less -p MAIL /etc/profile

-s 把連續多個空白行作為一個空白行顯示;

-Q 在終端下不響鈴;

比如:我們在顯示/etc/profile的內容時,讓其顯示行號;

[root@localhost ~]# less -N??? /etc/profile

2、less的動作命令:

進入less后,我們得學幾個動作,這樣更方便 我們查閱文件內容;最應該記住的命令就是q,這個能讓less終止查看文件退出;

動作:

回車鍵 向下移動一行;

y 向上移動一行;

空格鍵 向下滾動一屏;

b 向上滾動一屏;

d 向下滾動半屏;

h less的幫助;

u 向上洋動半屏;

w 可以指定顯示哪行開始顯示,是從指定數字的下一行顯示;比如指定的是6,那就從第7行顯示;

g 跳到第一行;

G 跳到最后一行;

p n% 跳到n%,比如 10%,也就是說比整個文件內容的10%處開始顯示;

/pattern 搜索pattern ,比如 /MAIL表示在文件中搜索MAIL單詞;

v 調用vi編輯器;

q 退出less

!command 調用SHELL,可以運行命令;比如!ls 顯示當前列當前目錄下的所有文件;

就less的動作來說,內容太多了,用的時候查一查man less是最好的。在這里就不舉例子了;

四、head 工具,顯示文件內容的前幾行

head 是顯示一個文件的內容的前多少行;

用法比較簡單;

head -n 行數值 文件名;

比如我們顯示/etc/profile的前10行內容,應該是:

[root@localhost ~]# head -n 10 /etc/profile

五、tail 工具,顯示文件內容的最后幾行

tail 是顯示一個文件的內容的最后多少行;

用法比較簡單;

tail?? -n 行數值 文件名;

比如我們顯示/etc/profile的最后5行內容,應該是:

[root@localhost ~]# tail -n 5 /etc/profile

tail -f /var/log/syslog 顯示文件 syslog 的后十行內容并在文件內容增加后,且自動顯示新增的文件內容。

備注:最后一條命令tail非常有用,尤其在監控日志文件時,可以在屏幕上一直顯示新增的日志信息。

Linux中tail命令詳解

總結

以上是生活随笔為你收集整理的less加管道tail_linux中cat、more、less、tail、head命令的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。