1. which
which命令查找出相關命令是否已經在搜尋路徑中,例子如下:
$which gcc //顯示出GNC的C編譯器安裝在哪個目錄
返回結果為:
/usr/bin/gcc
注意:如果which沒有找到要找的命令,可以試試whereis,該命令搜尋更大的範圍的系統目錄。有些系統上的which命令不顯示使用者沒有執行許可權的檔案。例如
$which ipppd
/usr/bin/which :no ipppd in (/bin: /usr/bin: /sbin:/usr/sbin)
$whereis ipppd
ipppd: /usr/sbin/ipppd
$ls -l /usr/sbin/ipppd
-rwx------ 1 root root 124924 Feb 3 2000 /usr/sbin/ipppd
2. locate
locate命令用於查詢檔案,它比find命令的搜尋速度快,它需要一個數據庫,這個資料庫由每天的例行工作(crontab)程式來建立。當我們建立好這個資料庫後,就可以方便地來搜尋所需檔案了。
即先執行:updatedb(無論在那個目錄中均可,可以放在crontab中 )後在 /var/lib/slocate/ 下生成 slocate.db 資料庫即可快速查詢。在命令提示符下直接執行#updatedb 命令即可。
$locate signal.h
/usr/include/asm/signal.h
/usr/include/linux/signal.h
/usr/include/signal.h
/usr/include/sys/signal.h
3. rpm
如果使用者知道自己要查詢到軟體包的名字,可以直接使用下面的命令。這個命令只在支援rpm的linux版本上有效,如redhat,centos,fedora和suse等。
$ rpm -q python //查詢檢查系統是否安裝了python</p> <p>python-1.5.2-27
或者:$rpm -qa| grep python //這是兩個命令的結合
rpm的其他用法:
rpm -qa (列出所有安裝了的包)
rpm -qi package (查詢某個包)
rpm -qf command (根據程式查詢包的名字)
rpm -ql package (查詢某個包所有的安裝檔案)
4.yum
yum的引數很多,以下是用於查詢軟體包的命令。但是也只支援特定的髮型版本,centos下最常用的命令
$yum list //列出所指定的軟體包,後可以加上你想查詢的軟體包的名字
$yum list installed //列出所有已安裝的軟體包
$yum info installed //列出所有已安裝的軟體包資訊
5.whereis
whereis是查詢檔案或者命令的所在目錄
#whereis pwd //查詢pwd命令所在的目錄
6. find
這個命令可用來查詢系統是否安裝了指定的軟體包,更重要的是也可以查詢自己對軟體包名稱記憶不是很清晰的軟體包。而且我想是這是所有linux和unix都支援的。find的查詢範圍很廣,功能強大,再搭配用正則表達,效果很好,不過建議儘量縮小搜尋範圍,減少系統壓力,畢竟,當系統檔案多了,搜尋耗費時間和資源的。
$find / -name "python" //從根目錄開始查詢包含”python“這個字元的檔案和資料夾。
find的詳細使用有如下例子:
# find . -maxdepth 1 -name *.jpg -print -exec convert 在當前目錄下查詢,查詢深度為一,查詢以.jpg結尾檔案,並將其轉化
# find / -name *.rpm -exec chmod 755 "{}" \; 搜尋以 ".rpm" 結尾的檔案並定義其許可權
# find / -name file1 從 "/" 開始進入根檔案系統搜尋檔案和目錄
# find / -perm -u+s 羅列一個系統中所有使用了SUID控制的檔案
# find / -user user1 搜尋屬於使用者 "user1" 的檔案和目錄
# find / -xdev -name \*.rpm 搜尋以 ".rpm" 結尾的檔案,忽略光碟機、捷盤等可移動裝置
# find /home/user1 -name "*.txt" | xargs cp -av --target-directory=/home/backup/ --parents 從一個目錄查詢並複製所有以 ".txt" 結尾的檔案到另一個目錄
# find /home/user1 -name \*.bin 在目錄 "/ home/user1" 中搜索帶有".bin" 結尾的檔案
# find /usr/bin -type f -atime +100 搜尋在過去100天內未被使用過的執行檔案
# find /usr/bin -type f -mtime -10 搜尋在10天內被建立或者修改過的檔案
# find /var/log -name "*.log" | tar cv --files-from=- | bzip2 > log.tar.bz2 查詢所有以 ".log" 結尾的檔案並做成一個bzip包
1. which
which命令查找出相關命令是否已經在搜尋路徑中,例子如下:
$which gcc //顯示出GNC的C編譯器安裝在哪個目錄
返回結果為:
/usr/bin/gcc
注意:如果which沒有找到要找的命令,可以試試whereis,該命令搜尋更大的範圍的系統目錄。有些系統上的which命令不顯示使用者沒有執行許可權的檔案。例如
$which ipppd
/usr/bin/which :no ipppd in (/bin: /usr/bin: /sbin:/usr/sbin)
$whereis ipppd
ipppd: /usr/sbin/ipppd
$ls -l /usr/sbin/ipppd
-rwx------ 1 root root 124924 Feb 3 2000 /usr/sbin/ipppd
2. locate
locate命令用於查詢檔案,它比find命令的搜尋速度快,它需要一個數據庫,這個資料庫由每天的例行工作(crontab)程式來建立。當我們建立好這個資料庫後,就可以方便地來搜尋所需檔案了。
即先執行:updatedb(無論在那個目錄中均可,可以放在crontab中 )後在 /var/lib/slocate/ 下生成 slocate.db 資料庫即可快速查詢。在命令提示符下直接執行#updatedb 命令即可。
$locate signal.h
/usr/include/asm/signal.h
/usr/include/linux/signal.h
/usr/include/signal.h
/usr/include/sys/signal.h
3. rpm
如果使用者知道自己要查詢到軟體包的名字,可以直接使用下面的命令。這個命令只在支援rpm的linux版本上有效,如redhat,centos,fedora和suse等。
$ rpm -q python //查詢檢查系統是否安裝了python</p> <p>python-1.5.2-27
或者:$rpm -qa| grep python //這是兩個命令的結合
rpm的其他用法:
rpm -qa (列出所有安裝了的包)
rpm -qi package (查詢某個包)
rpm -qf command (根據程式查詢包的名字)
rpm -ql package (查詢某個包所有的安裝檔案)
4.yum
yum的引數很多,以下是用於查詢軟體包的命令。但是也只支援特定的髮型版本,centos下最常用的命令
$yum list //列出所指定的軟體包,後可以加上你想查詢的軟體包的名字
$yum list installed //列出所有已安裝的軟體包
$yum info installed //列出所有已安裝的軟體包資訊
5.whereis
whereis是查詢檔案或者命令的所在目錄
#whereis pwd //查詢pwd命令所在的目錄
6. find
這個命令可用來查詢系統是否安裝了指定的軟體包,更重要的是也可以查詢自己對軟體包名稱記憶不是很清晰的軟體包。而且我想是這是所有linux和unix都支援的。find的查詢範圍很廣,功能強大,再搭配用正則表達,效果很好,不過建議儘量縮小搜尋範圍,減少系統壓力,畢竟,當系統檔案多了,搜尋耗費時間和資源的。
$find / -name "python" //從根目錄開始查詢包含”python“這個字元的檔案和資料夾。
find的詳細使用有如下例子:
# find . -maxdepth 1 -name *.jpg -print -exec convert 在當前目錄下查詢,查詢深度為一,查詢以.jpg結尾檔案,並將其轉化
# find / -name *.rpm -exec chmod 755 "{}" \; 搜尋以 ".rpm" 結尾的檔案並定義其許可權
# find / -name file1 從 "/" 開始進入根檔案系統搜尋檔案和目錄
# find / -perm -u+s 羅列一個系統中所有使用了SUID控制的檔案
# find / -user user1 搜尋屬於使用者 "user1" 的檔案和目錄
# find / -xdev -name \*.rpm 搜尋以 ".rpm" 結尾的檔案,忽略光碟機、捷盤等可移動裝置
# find /home/user1 -name "*.txt" | xargs cp -av --target-directory=/home/backup/ --parents 從一個目錄查詢並複製所有以 ".txt" 結尾的檔案到另一個目錄
# find /home/user1 -name \*.bin 在目錄 "/ home/user1" 中搜索帶有".bin" 結尾的檔案
# find /usr/bin -type f -atime +100 搜尋在過去100天內未被使用過的執行檔案
# find /usr/bin -type f -mtime -10 搜尋在10天內被建立或者修改過的檔案
# find /var/log -name "*.log" | tar cv --files-from=- | bzip2 > log.tar.bz2 查詢所有以 ".log" 結尾的檔案並做成一個bzip包