1. 程式人生 > 其它 >查詢檔案、目錄、路徑

查詢檔案、目錄、路徑

1、whereis

常用用法:whereis filename
含義:基於"/var/lib/mlocate/mlocate.db"資料庫,在標準的Linux下的幾個目錄中查詢filename相關聯的原始碼,幫助文件,二進位制檔案
比如"whereis man",匹配到的幫助文件為"/usr/share/man/man7/man.7.gz /usr/share/man/man1/man.1.gz",匹配到的二進位制檔案為"/usr/bin/man /usr/bin/X11/man /usr/local/man /usr/share/man"
比如"whereis kernel",匹配到的原始碼"/usr/src/linux-headers-3.16.0-30/kernel /usr/src/linux-headers-3.16.0-30-generic/kernel
" 備註: 1)由於是在標準的幾個目錄中查詢,因而擴充套件性不強 2)通過整體匹配,而不是部分匹配 "whereis ma"不能匹配到"/usr/bin/man" 3)匹配檔名,而不是匹配路徑中的目錄名 "whereis bin"不能匹配到"/bin/ps"

2、which

常用用法:which -a filename
含義:
在$PATH變數指定的路徑中查詢所有檔名為filename的檔案,並將所有找到的檔案的路徑打印出來
 
備註:
1)需要全部匹配,而不能是部分匹配
比如
“which ps”的結果是"/bin/ps"
"which p"的結果是空白,"/bin/ps"不是合法結果
2)需要匹配檔名,與路徑中的目錄名匹配不符合要求
比如
"which bin"的結果是空白,"/bin/ps"不是合法結果 3)環境變數PATH中儲存了查詢命令時需要遍歷的目錄。which指令會在環境變數$PATH設定的目錄裡查詢符合條件的檔案。也就是說,使用which命令,就可以看到某個系統命令是否存在,以及執行的到底是哪一個位置的命令。 注意:which pwd可以顯示 ; which cd不可以;因為cd是bash內建的命令,不屬於PATH內規範的

3、who:顯示當前所有登陸使用者的資訊。

4、whoami

5、locate

常用用法:locate [-i] PATTERN
含義:
1)查詢包含"PATTERN"的檔案路徑
2)整個查詢過程基於"/var/lib/mlocate/mlocate.db"這個資料庫
3)系統每天更新一次"/var/lib/mlocate/mlocate.db"資料庫
4)可以通過"updatedb"命令手動更新"/var/lib/mlocate/mlocate.db"資料庫