首頁技術文章正文

linux文件處理命令有哪些?linux文件處理命令超強匯總[linux云計算+運維開發(fā)]

更新時間:2020-03-13 來源:黑馬程序員 瀏覽量:

文件目錄

1、查看文件內容

①cat查看及合并

②more分屏顯示文件

③less分屏顯示文件

④head顯示文件開頭

⑤tail顯示文件結尾

2、統計文件信息

①wc統計文件內容數量

②du統計文件大小

3、文本處理

①find文件查找

②grep搜索文件內容

③輸出重定向


1、查看文件內容

①cat查看及合并

命令:cat

作用:查看文件內容

語法:#cat 文件名稱

           #cat 文件1 文件2 > 文件3

用法一:cat 文件名
示例代碼:

#cat 1.txt

含義:顯示1.txt文件的內容
特別注意:cat 命令用于查看文件內容時,不論文件內容有多少,都會一次性顯示。如果文件非常大,那么文件開頭的內容就看不到了。cat 命令適合查看不太大的文件。

linux文件處理命令01

用法二:cat 文件1 文件2 > 文件3

示例代碼:

#cat 1.txt 2.txt > 3.txt

含義:將1.txt和2.txt文件內容合并后,輸出到3.txt

linux文件處理命令02

②more分屏顯示文件

命令:more

作用:分屏查看文件

語法:#more 文件名

流程:more在讀取文件時,默認已經加載文件的全部內容。

用法一:more 文件名

示例代碼:

#more /var/log/boot.log

含義:分頁顯示/var/log/boot.log文件的內容

linux文件處理命令03

more 命令的執(zhí)行會打開一個交互界面,下面是一些常用交互命令:

回車鍵:向下移動一行
d:向下移動半頁
空格鍵:向下移動一頁
b:向上移動一頁
/ 字符串:搜索指定的字符串。
:f:顯示當前文件的文件名和行號
q 或 Q:退出more

③less分屏顯示文件

命令:less

作用:分屏查看文件

語法:# less 文件名

流程:不是加載整個文件,而是一點一點進行加載,相對而言,讀取大文件時,效率比較高。

示例代碼:使用less命令查看/var/log/boot.log的文件內容

用法一:less 文件名

示例代碼:

#less /var/log/boot.log

含義:分頁顯示/var/log/boot.log文件的內容

linux文件處理命令04


less 命令的執(zhí)行也會打開一個交互界面,下面是一些常用交互命令(和more相同):

回車鍵:向下移動一行
d:向下移動半頁
空格鍵:向下移動一頁
b:向上移動一頁
/ 字符串:搜索指定的字符串。
:f:顯示當前文件的文件名和行號
q 或 Q:退出more

cat,more,less三者的對比

              cat            more          less
作用顯示小文件內容顯顯示大文件內容顯顯示大文件內容顯
交互命令       無       有      有
上下鍵翻行       無       無      有

④head顯示文件開頭

命令:head

作用:查看一個文件的前n 行,如果不指定n,則默認顯示前10 行。

語法:#head [參數選項] 文件名

常見參數:-n 表示顯示前n行的內容,n等于行數

用法一:head 文件名
示例代碼:

head /var/log/boot.log

含義:顯示/var/log/boot.log文件的內容,默認為前10行

用法二:head -n 文件名

示例代碼:

head -3 /var/log/boot.log

含義:顯示/var/log/boot.log文件的前3行內容 

linux文件處理命令05

⑤tail顯示文件結尾(重點)

命令:tail

作用:查看一個文件的最后n 行,如果n 不指定默認顯示最后10 行

語法:# tail -n 文件路徑 【n 表示數字】

常見參數:
        -n 顯示最后n行的內容,n等于行數

        -f 輸出文件變化后新增加的數據

用法一:tail 文件名

示例代碼:

#tail /var/log/boot.log

含義:顯示/var/log/boot.log文件的內容,默認為最后10行

用法二:tail -n 文件名

示例代碼:

#tail -5 /var/log/boot.log

含義:顯示/var/log/boot.log文件的最后5行內容

linux文件處理命令05.5


用法三:tail -f 文件名

示例代碼:

#tail -f /var/log/messages

含義:顯示/var/log/messages文件中,執(zhí)行tail -f 命令后,新增的數據。

注意:作用相當于查看一個文件動態(tài)變化的內容,一般用于查看系統的日志的變化 按下ctrl+c可以退出查看狀態(tài)

linux文件處理命令06

注意:ctrl+c 鍵,在命令行中c 不再表示copy,而表示cancel(取消),在程序執(zhí)行過程中,通常都可以使用ctrl+c來終止程序運行或者退出程序

2、統計文件信息

①wc統計文件內容數量

命令:wc,wc = word count

作用:用于統計文件內容信息(包含行數、單詞數、字節(jié)數)

語法:# wc [參數選項] 文件名

常見參數:

        -l:表示lines,行數(以回車/換行符為標準)

        -w:表示words,單詞數 依照空格來判斷單詞數量

        -c:表示bytes, 字節(jié)數(空格,回車,換行)

用法一:wc -lwc 文件名

示例代碼:

#wc -lwc /var/log/boot.log

含義:統計/var/log/boot.log文件的行數,單詞數,字節(jié)數

注意:wc命令選項可以混在一起搭配使用,但選項的順序不影響輸出結果,第一個是行數,第二個是單詞數,第三個數字節(jié)數。

linux文件命令07

②du統計文件大小

命令:du

作用:查看文件或目錄(會遞歸顯示子目錄)占用磁盤空間大小

語法:# du [參數選項] 文件名或目錄名

常見參數:

       -s :summaries,只顯示匯總的大小,統計文件夾的大小

       -h:表示以高可讀性的形式進行顯示,如果不寫-h,默認以KB的形式顯示文件大小

用法一:du 文件名

示例代碼:

#du /var/log/boot.log

含義:統計/var/log/boot.log文件的大小

用法二:du -h 文件名

示例代碼:

#du -h /var/log/boot.log

含義:統計/var/log/boot.log文件的大小,以高可讀性顯示 

linux文件處理命令08


示例代碼:統計 /var/log 目錄大小

用法三:du 目錄名
示例代碼:

#du /var/log/

含義:統計/var/log/目錄的大小,包含目錄下每一個單獨文件的大小

用法四:du -s 目錄名

示例代碼:

#du -s /var/log/

含義:統計/var/log/boot.log文件的大小,匯總只顯示目錄大小

用法五:du -sh 目錄名

示例代碼:

#du -sh /var/log/

含義:統計/var/log/boot.log文件的大小,匯總只顯示目錄大小,并采用高可讀性

linux文件處理命令09

3、文本處理

①find文件查找(重點)

命令:find

作用:用于查找文檔(其選項有55 個之多)

語法:# find 路徑范圍 選項1 選項1的值 [選項2 選項2 的值…]

常用參數:

-name:按照文檔名稱進行搜索(支持模糊搜索)

* : 通配符,匹配任意個任意字符

-type:按照文檔的類型進行搜索

文檔類型的值: "-" 表示文件(在使用find 的時候需要用f 來替換), "d" 表示文件夾

用法一:find 路徑范圍 選項1 選項1的值 選項2 選項2的值

示例代碼:

#find /var/ -name boot.log -type f

含義:在/var/目錄下,查找名稱等于boot.log,類型是文件的文檔

linux文件處理命令10

用法二:find 路徑范圍 選項1 選項1的值使用通配符 選項2 選項2的值

示例代碼:

#find /var/log -name "*.log" -type f

含義:在/var/log目錄下,查找所有.log結尾,類型是文件的文檔,*.log需要用引號引起來。

linux文件處理命令11

用法一:find 路徑范圍 選項1 選項1的值

示例代碼:

#find /var/log -type d

含義:在/var/log目錄下,查找所有文件夾 

linux文件處理命令12

②grep搜索文件內容 (重要)

命令:grep

作用:在文件中直接找到包含指定信息的那些行,并把這些信息顯示出來

語法:#grep 要查找的內容 文件名

用法一:grep 查找的內容 文件名

示例代碼:

#grep network boot.log

含義:在boot.log文件中,查找包含network的行

linux文件處理命令13


用法二:grep 查找的內容 多個文件

示例代碼:

#grep network /var/log/*

含義:在/var/log目錄下的所有文件中,查找包含network的行

linux文件處理命令14

③輸出重定向

場景:一般命令的輸出都會顯示在終端中,有些時候需要將一些命令的執(zhí)行結果想要保存到文件中進行后續(xù)的分析/統計,則這時候需要使用到的輸出重定向技術。

>:標準輸出重定向 :覆蓋輸出,會覆蓋掉原先的文件內容

>>:追加重定向 :追加輸出,不會覆蓋原始文件內容,會在原始內容末尾繼續(xù)添加

語法:#有輸出的命令 重定向符號 文件名

用法一:使用 > 進行覆蓋輸出

示例代碼:

#11 > llroot.txt

含義:將ll命令輸出的內容,寫入到llroot.txt文件中,如果llroot.txt文件中有其他內容,則先清空,在寫入
注意:文件路徑中的文件可以是不存在的文件,例如llroot.txt可以不存在,執(zhí)行命令時會自動創(chuàng)建這個文件

linux文件處理命令15

用法二:使用 >> 進行追加輸出
示例代碼:

#11 >> llroot.txt

含義:將ll命令輸出的內容,追加寫入到llroot.txt文件中

注意:文件路徑中的文件可以是不存在的文件,例如llroot.txt可以不存在,執(zhí)行命令時會自動創(chuàng)建這個文件 

linux文件命令處理16


猜你喜歡

linux云計算+運維開發(fā)課程

分享到:
在線咨詢 我要報名
和我們在線交談!