1.作用
成都創(chuàng)新互聯(lián)長期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為伊金霍洛企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè),伊金霍洛網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
Linux find命令用來在指定目錄下查找文件。 任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設(shè)置任何參數(shù),則find命令將在當前目錄下查找子目錄與文件。并且將查找到的子目錄和文件全部進行顯示。
2.格式:
3.常用參數(shù)
1.作用
netstat命令用于顯示與IP、TCP、UDP和ICMP協(xié)議相關(guān)的統(tǒng)計數(shù)據(jù),一般用于檢驗本機各端口的網(wǎng)絡(luò)連接情況。netstat是在內(nèi)核中訪問網(wǎng)絡(luò)及相關(guān)信息的程序,它能提供TCP連接,TCP和UDP監(jiān)聽,進程內(nèi)存管理的相關(guān)報告。
2.命令
usage:
netstat [-vWeenNcCF] [Af] -r netstat {-V|--version|-h|--help}
netstat [-vWnNcaeol] [Socket ...]
netstat { [-vWeenNac] -I[Iface] | [-veenNac] -i | [-cnNe] -M | -s [-6tuw] } [delay]
常用組合:
netstat -lntup
說明: l:listening n:num t:tcp u:udp p:process
查看linux所有被占用的端口
netstat -tulnp
可以通過netstat -tulnp | grep 端口號查看當前端口號是否被占用
netstat -tulnp|grep 3306
-t(tcp)只顯示tcp相關(guān)的
-u(udp)只顯示udp相關(guān)的
-l(listening)只顯示監(jiān)聽服務(wù)的端口
-n(numeric)不解析名稱,能用數(shù)字表示的就不用別名(例如:localhost會轉(zhuǎn)成127.0.0.1)
-p(programs)顯示端口的PID和程序名稱
1、按名稱或正則表達式查找文件
要按特定名稱搜索文件,命令如下:
find . -name test.txt
如何查找所有格式為pdf的書籍?使用正則表達式:
find ./yang/books -name "*.pdf"
默認情況下,find命令會搜索常規(guī)文件,但最好進行指定(-type f)以使所有內(nèi)容更清晰:
find ./yang/books -type f -name "*.pdf"
2、查找不同類型的文件
除了搜索常規(guī)文件外,我們還可以通過指定-type選項來搜索其他類型的文件,例如目錄:
find . -type d -name "yang*"
或者符號鏈接:
find . -type l -name "yang*"
3、按指定的時間戳查找文件
要搜索atime超過一年的文件,我們可以編寫如下命令:
find . -type f -atime +365
如果我們需要查找mtime正好是5天前的文件,請不要包含+,因為它的意思是“大于”。
find . -type f -mtime 5
顯然,+表示“大于”,-表示“小于”。所以我們可以搜索ctime在5~10天前的文件:
find . -type f -ctime +5 -ctime -10
4、按大小查找文件
類似于按時間戳查找文件,+表示“大于”,-表示“小于”。例如,要查找大小為10MB~1GB的文件:
find . -type f -size +10M -size -1G
5、按權(quán)限查找文件
合理控制文件的權(quán)限是Linux管理員的一項重要任務(wù)。find命令的-perm選項可以幫助我們按指定權(quán)限查找文件:
find . -type f -perm 777
6、按所有權(quán)查找文件
例如,以下命令將查找所有屬于yang的文件:
find -type f -user yang
7、在找到文件后執(zhí)行命令
在大多數(shù)情況下,我們希望在找到我們需要的文件后進行后續(xù)操作。例如將其刪除,或檢查它們的詳細信息等等。-exec命令使這些所有事情變得更加容易。
現(xiàn)在,要了解如何使用它,讓我們回到之前提到的面試問題:
find . -type f -atime +365 -exec rm -rf {} \;
上述命令在-exec選項后是rm -rf,其用于刪除文件。{}是用于查找結(jié)果的占位符。
注意:占位符{}非常重要,尤其是在您想刪除文件時。因為,如果您不使用它,該命令將對所有文件執(zhí)行(而不是您剛剛通過find命令找到的文件)。
Linux
find命令用來在指定目錄下查找文件。任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設(shè)置任何參數(shù),則find命令將在當前目錄下查找子目錄與文件,并且將查找到的子目錄和文件全部進行顯示。
語法格式:
find path -option [ -print ] [ -exec -ok command ] {} \;
參數(shù)說明:
find根據(jù)下列規(guī)則判斷path和expression,在命令列上第一個-(),!之前的部分為path,之后的部分是expression。如果path是空字串則使用目前路徑,如果expression是空字串則使用-print為預設(shè)expression。
expression中可使用的選項有二三十個,在此只介紹常用的部分。
-mount,-xedv:只檢查和指定目錄在同一個文件系統(tǒng)下的文件,避免列出其他文件系統(tǒng)中的文件;
-amin n:在過去n分鐘內(nèi)被讀取過;
-anewer file:比文件file更晚被讀取過的文件;
-atime n:在過去n天內(nèi)被讀取過的文件;
-cmin n:在過去n分鐘內(nèi)被修改過;
-cnewer file:比文件file更新的文件;
-ctime n:在過去n天內(nèi)被修改過的文件;
-empty:空的文件-gid n or -group name:gid是n或是group名稱是name;
-ipath p,-path p:路徑名稱符合p的文件,ipath會忽略大小寫;
-name name,-iname name:文件名稱符合name的文件,iname會忽略大小寫;
-size n:文件大小是n單位,b代表512位元組的區(qū)塊,c表示字元數(shù),k表示kilo bytes,w是二個位元組。
-type c:文件類型是C的文件。
常用命令
find (目錄) [-type d | f] (文件夾 | 文件) -name (名稱,可使用正則表達式)
find /root -name "*core"
find /root -type d -name "*core" 文件夾
find /root -type f -name "*core" 文件
find /root -type f -path "*core" 路徑
find /root -name "*core" -delete 查到后刪除
find /root -size +20M (-20M) 大于20M(小于20M)
find /root -name "*core" -exec ls {} ; 對查找后的文件執(zhí)行l(wèi)s操作
壹——主要內(nèi)容
find 命令的基本結(jié)構(gòu)如下:
find 命令手冊 : man find
find 命令中的 -name 選項可以根據(jù)文件名稱進行檢索( 區(qū)分大小寫 )。如需要忽略文件名中的大小寫,可以使用 -iname 選項。
-name 和 -iname 兩個選項都支持 wildcards 。如:
例1:查找 /usr 目錄下所有文件名以 .txt 結(jié)尾的文件
例2:查找 /usr 目錄下所有文件名剛好為 4 個字符的文件
例3:查以大寫字母開頭的文件
例4:查以兩個小寫字母和兩個數(shù)字開頭的txt文件
類似的還有:
-lname -ilname
-path -ipath
-regx -iregx
有些時候,你需要在搜索時匹配某個文件或目錄的 完整路徑 ,而不僅僅是匹配文件名??梢允褂? -path 或 -ipath 選項。
例1:如查找 /usr 下所有文件名以 .txt 結(jié)尾的文件或目錄,且該文件的父目錄必須是 src ??梢允褂靡韵旅睿?/p>
例2:在當前目錄除aa之外的子目錄內(nèi)搜索 txt文件
例3:在當前目錄,不再子目錄中,查找txt文件
如果只想搜索得到文件 或 目錄,即不想它們同時出現(xiàn)在結(jié)果中??梢允褂? -type 選項指定文件類型。
-type 選項最常用的參數(shù)如下:
例:檢索 /usr 下所有文件名以 python 開頭的目錄
find 命令支持 -empty 選項用來檢索 為空 的文件或目錄??瘴募次募餂]有任何內(nèi)容,空目錄即目錄中沒有任何文件或子目錄。
例:檢索用戶主目錄下所有的空目錄
find 命令也允許用戶對當前的匹配條件進行 “反義” (類似于 邏輯非 操作)。
如需要檢索 /usr 下所有文件名 不 以 .txt 為后綴的文件??梢允褂靡韵旅睿?/p>
也可以“翻轉(zhuǎn)”任何其他的篩選條件,如:檢索 /usr 下所有內(nèi)容不為空的文件
為了檢索歸屬于特定用戶的文件或目錄,可以使用 -user 選項。
例:檢索根目錄下所有屬主為 starky 的文件
類似于 -user 選項, -group 選項則可以根據(jù)文件或目錄的 屬組 進行檢索。
有些時候,需要根據(jù)文件創(chuàng)建或修改的時間進行檢索。
Linux 系統(tǒng)中,與文件相關(guān)聯(lián)的時間參數(shù)有以下三種:
與此對應(yīng)的是 find 命令中的 -mtime , -atime 和 -ctime 三個選項。
這三個選項的使用遵循以下示例中的規(guī)則:
檢索 /usr 下兩天前被修改過的文件
如果覺得 -mtime 等選項以 天 為單位時間有點長,還可以使用 -mmin , -amin , -cmin 三個選項。
查找比 aa.txt 新 的文件
查找比 aa.txt 舊 的文件
查找比aa.txt新,比bb.txt舊的文件
-size 選項允許用戶通過文件大小進行搜索(只適用于文件,目錄沒有大小……)。
表示文件大小的單位由以下字符組成:
另外,還可以使用 + 或 - 符號表示 大于 或 小于 當前條件。
檢索文件大小高于 1 GB 的文件
find 命令可以使用 -perm 選項以文件權(quán)限為依據(jù)進行搜索。
9.1使用符號形式
例1:如需要檢索 /usr 目錄下權(quán)限為 rwxr-xr-x 的文件,可以使用以下命令:
例2:搜索 /usr 目錄下所有權(quán)限為 r-xr-xr-x (即系統(tǒng)中的所有用戶都只有讀寫權(quán)限)的文件和目錄,可以使用以下命令:
很多時候,我們只想匹配文件權(quán)限的一個 子集 。比如,檢索可以直接被任何用戶執(zhí)行的文件,即只關(guān)心文件的執(zhí)行權(quán)限,而不用管其讀寫權(quán)限是什么。
上述的需求可以通過以下命令實現(xiàn):
其中 a=x 前面的 / 符號即用來表示只匹配權(quán)限的某個子集(執(zhí)行權(quán)限),而不用關(guān)心其他權(quán)限的具體設(shè)置。
9.2使用數(shù)字形式
例如:搜索 /usr 目錄下權(quán)限為 644 (即 rwxr-xr-x )的文件
find 命令默認是以 遞歸 的方式檢索項目的,這有時候會導致得到的結(jié)果數(shù)量非常巨大??梢允褂? -maxdepth 限制 find 命令遞歸的層數(shù)。
例如:搜索時向下遞歸的層數(shù)最大為 3
在之前的例子中有出現(xiàn)多個搜索條件的 組合 以及對某個搜索條件的 反轉(zhuǎn) 。
實際上 find 命令支持 “and” 和 “or” 兩種邏輯運算,對應(yīng)的命令選項分別是 -a 和 -o 。通過這兩個選項可以對搜索條件進行更復雜的組合。
此外還可以使用 小括號 對搜索條件進行 分組 。注意 find 命令中的小括號常需要用 單引號 包裹起來。因小括號在 Shell 中有特殊的含義。
如檢索 /usr 下文件名以 python 開頭且類型為目錄的文件
該命令等同于:
更復雜的組合形式如:
例4:在除dir0及子目錄以外的目錄下查找txt后綴文件
說明:-a 應(yīng)該是and的縮寫,意思是邏輯運算符‘與’(); -o應(yīng)該是or的縮寫,意思是邏輯運算符‘或’(||), -not 表示非.
命令行的意思是:如果目錄dir0存在(即-a左邊為真),則求-prune的值,-prune 返回真,‘與’邏輯表達式為真(即-path './dir0*' -a -prune 為真),find命令將在除這個目錄以外的目錄下查找txt后綴文件并打印出來;如果目錄dir0不存在(即-a左邊為假),則不求值-prune ,‘與’邏輯表達式為假,則在當前目錄下查找所有txt后綴文件。
-delete 選項可以用來刪除搜索到的文件和目錄。
例如:刪除 home 目錄下所有的空目錄:
-exec 選項可以對搜索到的結(jié)果執(zhí)行執(zhí)行該參數(shù)所給出的shell命令。形式為 command {} \; ,注意{}與\;之間有空格 。每當 find 命令檢索到一個符合條件的文件,會使用其完整路徑取代命令中的 {} ,然后執(zhí)行 -exec 后面的命令一次。
例1:如需要將 home 目錄下所有的 MP3 音頻文件復制到移動存儲設(shè)備(假設(shè)路徑是 /media/MyDrive ),可使用下面的命令:
其中的 大括號 ( {} )作為檢索到的文件的 占位符 ,而分號( ; )作為命令結(jié)束的標志。因為分號是 Shell 中有特殊含義的符號,所以需要使用單引號括起來或前面加上轉(zhuǎn)義符 \ 。
例2:查看當前目錄下的所有普通文件,并在 - exec 選項中使用 ls -l 命令將它們列出
例3:在多個文件中檢索某個指定的字符串。如在用戶主目錄下的所有文件中檢索字符串 hello ,可以使用如下命令:
創(chuàng)建 Gzip 格式的壓縮文件的命令為:
現(xiàn)在假設(shè)需要將用戶主目錄下所有的 MP3 文件添加到壓縮包 music.tar.gz 中,直觀的感覺是,其命令應(yīng)為如下形式:
實際情況是,這樣得到的 music.tar.gz 其實只包含一個 MP3 文件。原因是 find 命令 每次 發(fā)現(xiàn)一個音頻文件,都會再執(zhí)行一次 -exec 選項后面的壓縮命令。導致先前生成的壓縮包被覆蓋。
可以先讓 find 命令檢索出所有符合條件的音頻文件,再將得到的 文件列表 傳遞給后面的壓縮命令。完整的命令如下:
如果想瀏覽搜索到的文件(目錄)的詳細信息(如權(quán)限和大小等),可以直接使用 -ls 選項。
例如:瀏覽所有 1G 以上大小的文件的詳細信息
與exec作用相同,區(qū)別在于,在執(zhí)行命令之前,都會給出提示,讓用戶確認是否執(zhí)行
與 exec 作用相同 ,起承接作用。區(qū)別在于 |xargs 主要用于承接刪除操作 ,而 -exec 都可用 如復制、移動、重命名等
例1:查找以ap或may開頭的文件
例2:查硬連接數(shù)大于2的文件或目錄
例3:查找含特定字符串的文件。查找當前目錄下含有"the string you want find…"字符串的文件:
例4:從根目錄開始查tmpfile,一旦查到馬上刪除
例5:如何用find查找某一天更改的文件?可以使用這一行命令來實現(xiàn):
A Guide to the Linux “Find” Command
網(wǎng)站標題:linux命令fi,linux命令find和ps
文章地址:http://www.rwnh.cn/article10/dsigpdo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、商城網(wǎng)站、軟件開發(fā)、微信小程序、搜索引擎優(yōu)化、網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)