中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中的查找命令有哪些

發布時間:2022-02-14 10:20:07 來源:億速云 閱讀:146 作者:iii 欄目:開發技術

這篇文章主要講解了“Linux中的查找命令有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Linux中的查找命令有哪些”吧!

Linux中的查找命令有哪些

find

find命令在某個目錄下查找。

一般使用格式:

find

-pathname:所要查找的目錄及其所有子目錄(默認遞歸查找)。默認為當前目錄。 -option:指定參數。 -filetype:想要查找的文件類型。 -action:對查找結果進行的處理。

常用參數

?

-name: 按照文件名查找文件。 -size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以字節計。 -depth:在查找文件時,首先查找當前目錄中的文件,然后再在其子目錄中查找。 -ctime n:查找系統中最后n24小時被改變文件狀態的文件。 -atime n:查找系統中最后n24小時訪問的文件 -type: 查找某一類型的文件,如:

?

-b : 塊設備文件。 -c : 字符設備文件。 -d : 目錄。 -f : 普通文件。 -l : 符號鏈接文件。 -p : 管道文件。

例子:

find . -name a* -ls

功能 在當前目錄中查找所有以a開頭的文件,并顯示它們的詳細信息。

輸出

slot@slot-ubt:~/test$ find . -name a* -ls
  397656      4 -rw-rw-r--   2 slot     slot           13 12月  3 16:21 ./aa

locate

locate命令在系統的全局范圍內查找。 一般使用格式:

locate

-option:指定參數。 -filetype:想要查找的文件類型。

常用參數:

?

-d:指定要查找的數據庫路徑 -h: 顯示輔助訊息 -i:忽略大小寫 -q:安靜模式,不會顯示任何錯誤訊息。 -n:至多顯示 n個輸出。 -r: 使用正規運算式 做尋找的條件。 -o: 指定資料庫存的名稱。 -V: 顯示程式的版本訊息

例子:

slot@slot-ubt:~/test$ locate hello.txt
/usr/share/doc/syslinux-common/asciidoc/hello.txt

?

注意: locate是從數據庫中讀取數據,而不是從文件系統中讀取。從數據庫中讀取時是讀取updatedb命令返回的結果:

Linux中的查找命令有哪些

?

而updatedb命令默認是一天(24小時)才自動運行一次,這就意味著如果是最新創建的文件,使用locate命令可能查找不到。

解決方法: 在使用locate命令前,先手動運行updatedb命令(需要root權限):

sudo updatedb

例子: 首先新建一個名為haha.ha的文件,然后用locate命令查找該文件,發現查找不到結果:

slot@slot-ubt:~/test$ touch haha.ha
slot@slot-ubt:~/test$
slot@slot-ubt:~/test$ locate haha.ha
slot@slot-ubt:~/test$

使用updatedb命令更新后再查找,可以找到:

slot@slot-ubt:~/test$ sudo updatedb
[sudo] password for slot:
slot@slot-ubt:~/test$
slot@slot-ubt:~/test$ locate haha.ha
/home/slot/test/haha.ha
slot@slot-ubt:~/test$

grep

和find及locate命令不同的是,grep命令是在指定文件中搜索特定的內容,然后將包含有這些匹配內容的行輸出到標準輸出。如果不指定文件名,則從標準輸入讀取內容。grep命令經常和find等命令結合使用,其中grep常充當“過濾器”的角色。

?

常用參數: -c: 只輸出匹配行的行數。 -h: 查詢多文件時不顯示文件名。 -I: 不區分大小寫(只適用于單字符)。 -n: 顯示匹配的行和行號。 -s: 不顯示 不存在或無匹配文本 的錯誤信息。 -v: 反向匹配,即顯示不包含匹配文本的所有行。 -R: 遞歸查詢,即連同子目錄中的文件一起查詢。

例子:在目錄~/test下遞歸查找包含字符串”hello”的所有文件,并顯示匹配行的行號

slot@slot-ubt:~/test$ grep -Rn "hello" ~/test/home/slot/test/aa:1:hello world!
/home/slot/test/cc:1:hello world!
/home/slot/test/bb:1:hello world!

注意,這里文件bb是文件aa的符號鏈接:

slot@slot-ubt:~/test$ ls -l
total 8
-rw-rw-r-- 2 slot slot 13 12月  3 16:21 aa
lrwxrwxrwx 1 slot slot  2 12月  3 16:04 bb -> aa
-rw-rw-r-- 2 slot slot 13 12月  3 16:21 cc

如果用-r參數則不顯示符號鏈接:

slot@slot-ubt:~/test$ grep -rn "hello" ~/test/home/slot/test/aa:1:hello world!
/home/slot/test/cc:1:hello world!

which

which命令將在PATH變量指定的路徑中 查找某個系統命令的位置,并且返回第一個搜索結果。也就是說,使用which命令,就可以看到某個系統命令是否存在,以及執行的到底是哪一個位置的命令。

例如,查看當前環境下使用的是哪個bash:

slot@slot-ubt:~/test$ which bash
/bin/bash

whereis

whereis命令用來定位二進制文件(參數-b)、源代碼文件(參數-s)和幫助手冊文件(即man文件,參數-m)。如果省略參數,則返回所有信息。

例子:

slot@slot-ubt:~/test$ whereis bash
bash: /bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz
slot@slot-ubt:~/test$
slot@slot-ubt:~/test$ whereis -b bash
bash: /bin/bash /etc/bash.bashrc
slot@slot-ubt:~/test$
slot@slot-ubt:~/test$ whereis -s bash
bash:
slot@slot-ubt:~/test$
slot@slot-ubt:~/test$ whereis -m bash
bash: /usr/share/man/man1/bash.1.gz
slot@slot-ubt:~/test$https://www.jianshu.com/nb/7880623)

感謝各位的閱讀,以上就是“Linux中的查找命令有哪些”的內容了,經過本文的學習后,相信大家對Linux中的查找命令有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梅河口市| 淮南市| 东平县| 西华县| 渭源县| 海林市| 思南县| 亚东县| 开江县| 安岳县| 会理县| 嘉祥县| 秀山| 郑州市| 怀仁县| 宜君县| 桦南县| 微山县| 修文县| 长子县| 张家港市| 临颍县| 仪陇县| 隆子县| 江油市| 布拖县| 平谷区| 延边| 南涧| 那坡县| 巴东县| 湖州市| 临泉县| 遵化市| 浪卡子县| 新化县| 六安市| 灵台县| 株洲市| 合水县| 卢湾区|