apt-get

一條linux命令

apt-get,是一條linux命令,適用於deb包管理式的操作系統,主要用於自動從網際網路的軟體倉庫中搜索、安裝、升級、卸載軟體或操作系統。

基本介紹


Advanced Package Tool,又名apt-get,是一款適用於Unix和Linux系統的應用程序管理器。最初於1998年發布,用於檢索應用程序並將其載入到Debian Linux系統。Apt-get成名的原因之一在於其出色的解決軟體依賴關係的能力。其通常使用.deb-formatted文件,但經過修改後可以使用apt-rpm處理紅帽的Package Manager(RPM)文件。
Apt-get在Linux社區得到廣泛使用,成為用來管理桌面、筆記本和網路的重要工具。隨著Linux在企業中的普及,Windows和Mac用戶了解如何使用apt-get載入應用程序有一定的好處。
另外,隨著單片機設備如Raspberry Pi的熱度增加,apt-get在這些平台上是比較便捷的應用載入方式。如果你想要載入的應用需要程序庫或另一個應用程序才能正常工作,apt-get會幫你找到並載入所需的程序庫或應用代碼。apt-get當前的穩定版本是1.0.9.2,在2014年10月發布。
使用apt-get的主流Linux系統包括DebianUbuntu變異版本。大多數情況下,從命令行運行該工具。桌面上有幾個圖形前端可以使用,包括Synaptic Package Manager、Ubuntu Software Center、Aptitude和Kpackage。Raspberry Pi和Beaglebone Black nanoLinux版用戶可以很容易地使用apt-get載入程序,因為這些系統通常來自Ubuntu或Debian代碼。是debianubuntu發行版的包管理工具,與紅帽中的yum工具非常類似。
apt-get命令一般需要root許可權執行,所以一般跟著sudo命令。
例:sudo apt-get xxxx

apt命令用法

packagename指代為軟體包的名稱。
apt-get update
在修改/etc/apt/sources.list或/etc/apt/preferences之後運行該命令。此外您需要定期運行這一命令以確保您的軟體包列表是最新的。
apt-get install packagename
安裝一個新軟體包(參見下文的aptitude)
apt-get remove packagename
卸載一個已安裝的軟體包(保留配置文檔)
apt-get remove --purge packagename
卸載一個已安裝的軟體包(刪除配置文檔)
apt-get autoremove packagename
刪除包及其依賴的軟體包
apt-get autoremove --purge packagname
刪除包及其依賴的軟體包+配置文件,比上面的要刪除的徹底一點
dpkg --force-all --purge packagename
有些軟體很難卸載,而且還阻止了別的軟體的應用,就能夠用這個,但是有點冒險。
apt-get autoclean
apt會把已裝或已卸的軟體都備份在硬碟上,所以假如需要空間的話,能夠讓這個命令來刪除您已卸載掉的軟體的備份。
apt-get clean
這個命令會把安裝的軟體的備份也刪除,但是這樣不會影響軟體的使用。
apt-get upgrade
可以使用這條命令更新軟體包,apt-get upgrade不僅可以從相同版本號的發布版中更新軟體包,也可以從新版本號的發布版中更新軟體包,儘管實現后一種更新的推薦命令為apt-get dist-upgrade。
在運行apt-get upgrade命令時加上-u選項很有用(即:apt-get -u upgrade)。這個選項讓APT顯示完整的可更新軟體包列表。不加這個選項,你就只能盲目地更新。APT會下載每個軟體包的最新更新版本,然後以合理的次序安裝它們。注意在運行該命令前應先運行 apt-get update更新資料庫,更新任何已安裝的軟體包。
apt-get dist-upgrade
將系統升級到新版本。
apt-cache search string
在軟體包列表中搜索字元串。
dpkg -l package-name-pattern列出任何和模式相匹配的軟體包。假如您不知道軟體包的全名,您能夠使用“*package-name-pattern*”。
周詳查看已安裝或可用的軟體包。和apt-get類似,aptitude能夠通過命令行方式調用,但僅限於某些命令——最常見的有安裝和卸載命令。
由於aptitude比apt-get了解更多信息,能夠說他更適合用來進行安裝和卸載。
apt-cache showpkg pkgs
顯示軟體包信息。
apt-cache dumpavail列印可用軟體包列表。
apt-cache show pkgs
顯示軟體包記錄,類似於dpkg –print-avail。
apt-cache pkgnames
列印軟體包列表中任何軟體包的名稱。
dpkg -Sfile
這個文檔屬於哪個已安裝軟體包。
dpkg -L package
列出軟體包中的任何文檔。
dpkg -l
列出所有已安裝的軟體包。
apt-file search filename
查找包含特定文檔的軟體包(不一定是已安裝的),這些文檔的文檔名中含有指定的字元串。apt-file是個單獨的軟體包。您必須先使用apt-get install來安裝他,然後運行apt-file update。假如apt-file search filename輸出的內容太多,您能夠嘗試使用apt-file search filename | grep -w filename(只顯示指定字元串作為完整的單詞出現在其中的那些文檔名)或類似方法,例如:apt-file search filename | grep /bin/(只顯示位於諸如/bin或/usr/bin這些文件夾中的文檔,假如您要查找的是某個特定的執行文檔的話,這樣做是有幫助的)。
apt-get autoclean
定期運行這個命令來清除那些已卸載的軟體包的.deb文檔。通過這種方式,您能夠釋放大量的磁碟空間。假如您的需求十分迫切,能夠使用apt-get clean以釋放更多空間。這個命令會將已安裝軟體包裹的.deb文檔一併刪除。大多數情況下您不會再用到這些.debs文檔,因此假如您為磁碟空間不足而感到焦頭爛額,這個辦法也許值得一試。