搜索文件的路徑(4條命令)


which命令

which命令:顯示(shell)命令的完整路徑。

格式:which [options] [--] programname [...]

參數:

參數 作用
-n -n<文件名長度>:制定文件名長度,指定的長度必須大於或等於所有文件中最長的文件名;
-p 與-n參數相同,但此處的<文件名長度>包含了文件的路徑;
-w 指定輸出時欄位的寬度;
-V 顯示版本信息。

例子:

[root@xxx ~]# which pwd
/usr/bin/pwd

find命令

find命令:用於按照指定條件來查找文件

格式:“find [查找路徑] 尋找條件 操作”。

參數:

參數 作用
-name 匹配名稱
-perm 匹配權限(mode為完全匹配,-mode為包含即可)
-user 匹配所有者
-group 匹配所有組
-mtime -n +n 匹配修改內容的時間(-n指n天以內,+n指n天以前)
-atime -n +n 匹配訪問文件的時間(-n指n天以內,+n指n天以前)
-ctime -n +n 匹配修改文件權限的時間(-n指n天以內,+n指n天以前)
-nouser 匹配無所有者的文件
-nogroup 匹配無所有組的文件
-newer f1 !f2 匹配比文件f1新但比f2舊的文件
--type b/d/c/p/l/f 匹配文件類型(后面的字母參數依次表示塊設備、目錄、字符設備、管道、鏈接文件、文本文件)
-size 匹配文件的大小(+50KB為查找超過50KB的文件,而-50KB為查找小於50KB的文件)
-prune 忽略某個目錄
-exec …… {}; 后面可跟用於進一步處理搜索結果的命令(下文會有演示)

whereis命令

whereis命令:定位指令的二進制程序、源代碼文件和man手冊頁等相關文件的路徑。

格式:whereis [options] [-BMS directory... -f] name...

參數:

參數 作用
-b 只查找二進制文件;
-B 只在設置的目錄下查找二進制文件;
-f 不顯示文件名前的路徑名稱;
-m 只查找說明文件;
-M 只在設置的目錄下查找說明文件;
-s 只查找原始代碼文件;
-S 只在設置的目錄下查找原始代碼文件;
-u 查找不包含指定類型的文件。

例子:

[root@xxx ~]# whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

# 查找man手冊頁
[root@xxx ~]# whereis ls -m
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

locate命令

locate命令:通過名字查找文件

格式:locate [OPTION]... PATTERN...

參數:

參數 作用
-d<目錄>或--database=<目錄> 指定數據庫所在的目錄;
-u 更新slocate數據庫;

例子:

# 查找sh開頭的文件
[root@xxx ~]# locate /etc/sh
/etc/shadow
/etc/shadow-
/etc/shells


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM