RPM應用——查詢(已安裝包和未安裝包)
查詢功能
命令格式 rpm {-q|--query} [select-options] [query-options]
RPM的查詢功能是極為強大,是極為重要的功能之一;舉幾個常用的例子,更為詳細的具體的,請參考#man rpm
1、對系統中已安裝軟體的查詢
1)查詢系統已安裝的軟體
語法:rpm -q 軟體名
舉例:[[email protected] beinan]# rpm -q gaim
gaim-1.3.0-1.fc4
檢視系統中所有已經安裝的包,要加 -a 引數 ;
[[email protected] RPMS]# rpm -qa
如果分頁檢視,再加一個管道 |和more命令;
[[email protected] RPMS]# rpm -qa |more
在所有已經安裝的軟體包中查詢某個軟體,比如說 gaim ;可以用 grep 抽取出來;
[[email protected] RPMS]# rpm -qa |grep gaim
上面這條的功能和 rpm -q gaim 輸出的結果是一樣的;
2)查詢一個已經安裝的檔案屬於哪個軟體包
語法 rpm -qf 檔名
注:檔名所在的絕對路徑要指出
舉例:
[[email protected] RPMS]# rpm -qf /usr/lib/libacl.la
libacl-devel-2.2.23-8
3)查詢已安裝軟體包都安裝到何處
語法:rpm -ql 軟體名 或 rpm rpmquery -ql 軟體名
舉例:
[[email protected] RPMS]# rpm -ql lynx
[[email protected] RPMS]# rpmquery -ql lynx
4)查詢一個已安裝軟體包的資訊
語法格式: rpm -qi 軟體名
舉例:
[[email protected] RPMS]# rpm -qi lynx
5)檢視一下已安裝軟體的配置檔案
語法格式:rpm -qc 軟體名
舉例:
[[email protected] RPMS]# rpm -qc lynx
6)檢視一個已經安裝軟體的文件安裝位置
語法格式: rpm -qd 軟體名
舉例:
[[email protected] RPMS]# rpm -qd lynx
7)檢視一下已安裝軟體所依賴的軟體包及檔案
語法格式: rpm -qR 軟體名
舉例:
[[email protected] beinan]# rpm -qR rpm-python
查詢已安裝軟體的總結:對於一個軟體包已經安裝,我們可以把一系列的引數組合起來用;比如 rpm -qil ;比如:
[[email protected] RPMS]# rpm -qil lynx
2、對於未安裝的軟體包的檢視:
檢視的前提是您有一個.rpm 的檔案,也就是說對既有軟體file.rpm的檢視等;
1)檢視一個軟體包的用途、版本等資訊;
語法: rpm -qpi file.rpm
舉例:
[[email protected] RPMS]# rpm -qpi lynx-2.8.5-23.i386.rpm
2)檢視一件軟體包所包含的檔案;
語法: rpm -qpl file.rpm
舉例:
[[email protected] RPMS]# rpm -qpl lynx-2.8.5-23.i386.rpm
3)檢視軟體包的文件所在的位置;
語法: rpm -qpd file.rpm
舉例:
[[email protected] RPMS]# rpm -qpd lynx-2.8.5-23.i386.rpm
4)檢視一個軟體包的配置檔案;
語法: rpm -qpc file.rpm
舉例:
[[email protected] RPMS]# rpm -qpc lynx-2.8.5-23.i386.rpm
5)檢視一個軟體包的依賴關係
語法: rpm -qpR file.rpm
舉例:
[[email protected] archives]# rpm -qpR yumex_0.42-3.0.fc4_noarch.rpm
/bin/bash
/usr/bin/python
config(yumex) = 0.42-3.0.fc4
pygtk2
pygtk2-libglade
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
usermode
yum >= 2.3.2