天天看點

Linux: 檢視軟體安裝路徑

如果我們在Linux 系統上安裝了某個軟體,我們可以通過如下的三種方式來确定。

一.        Which 指令

Shell 的which 指令可以找出相關指令是否已經在搜尋路徑中。 如:

[[email protected] ~]# which gcc

/usr/bin/gcc

二.        Whereis 指令

Whereis 指令搜尋更大範圍的系統目錄,和Shell 的搜尋路徑無關。 要注意,有些系統上的which 指令不顯示使用者沒有執行權限的檔案。

[[email protected] ~]# which ipppd

/sbin/ipppd

[[email protected] ~]# whereis ipppd

ipppd: /sbin/ipppd /usr/sbin/ipppd /usr/share/man/man8/ipppd.8.gz

三.        Locate 指令

該指令會先考察預先編譯好的一個檔案系統的索引,以此确定與特定模式相比對的檔案名。 它搜尋的并不特定與指令或者軟體包,而是能夠找到的任何類型的檔案。

Locate 的資料庫庫通常由updatedb 指令在每天晚上重新生成,這個指令由cron來運作。 是以,執行一次locate 的結果不是總能夠反映出檔案系統新近的變化。

比如檢視頭檔案signal.h

[Oracle@localhost ~]$ locate signal.h

warning: locate: could not open database: /var/lib/slocate/slocate.db: No such file or directory

warning: You need to run the 'updatedb' command (as root) to create the database.

Please have a look at /etc/updatedb.conf to enable the daily cron job.

[oracle@localhost ~]$ su - root

Password:

[[email protected] ~]# updatedb

[[email protected] ~]# locate signal.h

/usr/src/kernels/2.6.9-78.EL-i686/include/linux/signal.h

/usr/src/kernels/2.6.9-78.EL-i686/include/asm-i386/signal.h

/usr/src/kernels/2.6.9-78.EL-smp-i686/include/linux/signal.h

/usr/src/kernels/2.6.9-78.EL-smp-i686/include/asm-i386/signal.h

/usr/src/kernels/2.6.9-78.EL-hugemem-i686/include/linux/signal.h

/usr/src/kernels/2.6.9-78.EL-hugemem-i686/include/asm-i386/signal.h

/usr/share/doc/SDL-devel-1.2.7/html/sdlcondsignal.html

/usr/share/man/man0p/signal.h.0p.gz

/usr/include/valgrind/pub_tool_libcsignal.h

/usr/include/asm/signal.h

/usr/include/sys/signal.h

/usr/include/linux/signal.h

/usr/include/glib-2.0/gobject/gsignal.h

/usr/include/boost/signal.hpp

/usr/include/signal.h

參考文獻

http://blog.csdn.net/bulljordan23/article/details/7749270

繼續閱讀