Linux檢視軟體位置的命令

keeptrying發表於2012-12-26

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

 

一.        Which 命令

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

 

[root@localhost ~]# which gcc

/usr/bin/gcc

 

二.        Whereis 命令

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

 

[root@localhost ~]# which ipppd

/sbin/ipppd

[root@localhost ~]# 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:

[root@localhost ~]# updatedb

[root@localhost ~]# 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

 

 

轉自Davehttp://blog.csdn.net/tianlesoftware/article/details/5954040

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25744374/viewspace-751663/,如需轉載,請註明出處,否則將追究法律責任。

相關文章