树莓派开发从零开始学:超好玩的智能小硬件制作书
上QQ阅读APP看书,第一时间看更新

3.1.2 apt命令用法

想要了解某个命令很简单,使用man command就行了。下面来看一下man apt-get,如图3-1所示。

图3-1 man apt-get

Packagename是软件包的名称,具体的命令如下:

● apt-get update:在修改/etc/apt/sources.list之后运行该命令。此外需要定期运行这一命令以确保您的软件包列表是最新的。

● 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*。

● aptitude:详细查看已安装或可用的软件包。和apt-get类似,aptitude能够通过命令行方式调用,但仅限于某些命令——最常见的有安装和卸载命令。由于aptitude比apt-get包含更多信息,它更适合用来进行安装和卸载。

● apt-cache showpkg pkgs:显示软件包信息。

● apt-cache dumpavail:打印可用软件包列表。

● apt-cache show pkgs:显示软件包记录,类似于dpkg –print-avail。

● apt-cache pkgnames:打印软件包列表中任何软件包的名称。

● dpkg -S file:这个文档属于已安装软件包。

● dpkg -L package:列出软件包中的任何文档。

● dpkg –l:列出所有已安装的软件包。

● apt-get autoclean:定期运行这个命令来清除那些已卸载的软件包的.deb文档。通过这种方式,能够释放大量的磁盘空间。假如需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文档一并删除。大多数情况下不会再用到这些.debs文档,因此假如我们为磁盘空间不足而感到焦头烂额,这个办法也许值得一试。

apt-get命令使用方便,功能强大,是学习Linux中必须掌握的命令之一(和rh系列中的yum/dnf作用相同)。虽然现在已经有很多图形化的包管理工具,在我看来它们唯一的优点就是直观。如果熟悉了apt-get命令,相信你会做出正确的选择。

注意

几乎所有的非商业软件都是可以用apt-get安装的,即使不能用apt-get安装的商业软件,大部分也有deb安装包。