如果您不确定某个软件包是否已经安装,可以使用 dpkg
的 -l
(L的小写) 选项:
$ dpkg -l zsh No packages found matching zsh. |
上面结果这表明 zsh 没有 安装。
可以使用 apt-cache
命令和它的 search
子命令来搜索软件包: zsh,如清单 1 所示。
清单 1. 使用 apt-cache 搜索 zsh
$ apt-cache search zsh kdesdk-scripts - scripts and data files for development zsh - A shell with lots of features zsh-dbg - A shell with lots of features (debugging symbols) zsh-dev - A shell with lots of features (development files) zsh-doc - zsh documentation - info/HTML format csh - Shell with C-like syntax, standard login shell on BSD systems draai - A command-line music player for MPD fatrat-czshare - fatrat plugin allowing download and upload to czshare grml-shlib - Generic shell library used in grml scripts tucan - Download and upload manager for 1-Click Hosters viewglob - A graphical display of directories referenced at the shell prompt zsh-beta - A shell with lots of features (dev tree) zsh-beta-doc - zsh beta documentation - info/HTML format zsh-lovers - tips, tricks and examples for the zsh zsh-static - A shell with lots of features (static link) zshdb - debugger for Z-Shell scripts |
该输出给出了相关联的几个软件包,包含了 zsh
字符串。如果您想安装 Z shell,zsh 包就是您要的。(您可能还要安装 zsh-doc
和其他的包,但现在安装 zsh 就可以了。)
要从一个 APT 代码库安装,可以使用 apt-get
和它的 install
选项,如清单 2 所示。
清单 2. 通过 APT 安装 zsh
$ sudo apt-get install zsh Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: zsh-doc The following NEW packages will be installed: zsh 0 upgraded, 1 newly installed, 0 to remove and 59 not upgraded. Need to get 4,504 kB of archives. After this operation, 14.1 MB of additional disk space will be used. Get:1 http://us.archive.ubuntu.com/ubuntu/ natty/main zsh amd64 4.3.11-4ubuntu2.is.3ubuntu1 [4,504 kB] Fetched 4,504 kB in 7s (643 kB/s) Selecting previously deselected package zsh. (Reading database ... 146971 files and directories currently installed.) Unpacking zsh (from .../zsh_4.3.11-4ubuntu2.is.3ubuntu1_amd64.deb) ... Processing triggers for menu ... Processing triggers for man-db ... Setting up zsh (4.3.11-4ubuntu2.is.3ubuntu1) ... update-alternatives: using /bin/zsh4 to provide /bin/zsh (zsh) in auto mode. update-alternatives: using /bin/zsh4 to provide /bin/rzsh (rzsh) in auto mode. update-alternatives: using /bin/zsh4 to provide /bin/ksh (ksh) in auto mode. Processing triggers for menu ... |
注意: 由于 debian 的安全模式,影响软件包安装的命令前面必须加 sudo
。某些发行版以及修改了缺省安全模式的 debian,可以忽略 sudo
,但需要从 root 用户执行命令。
apt-get install
命令搜索并安装 zsh。如果有任何依赖包没有装,该命令同时安装这些包。
使用 -s
或 --status
选项验证 zsh 是否已经安装。见清单 3。
清单 3. 验证 zsh 是否安装
$ dpkg -s zsh Package: zsh Status: install ok installed Priority: optional Section: shells Installed-Size: 13732 Maintainer: Ubuntu Developers (ubuntu-devel-discuss@lists.ubuntu.com) Architecture: amd64 Version: 4.3.11-4ubuntu2.is.3ubuntu1 Depends: libc6 (>= 2.4), libcap2 (>= 2.10), libncursesw5 (>= 5.6+20070908) Recommends: libc6 (>= 2.11), libpcre3 (>= 8.10) Suggests: zsh-doc Conffiles: /etc/zsh/zlogin 48032df2ace0977f2491b016e3c421a3 /etc/zsh/zlogout b73789c3e790b855302ce10ca076037a /etc/zsh/zprofile 58c4f65d775c055b5d80b67c1bd12838 /etc/zsh/zshenv 5a8a0ff4f6ff945a5aa6ba7f6f1e8c97 /etc/zsh/zshrc e069ba51ba293da1aeddd5779324df19 /etc/zsh/newuser.zshrc.recommended dac3563a2ddd13e8027b1861d415f3d4 Description: A shell with lots of features Zsh is a UNIX command interpreter (shell) usable as an interactive login shell and as a shell script command processor. Of the standard shells, zsh most closely resembles ksh but includes many enhancements. Zsh has command-line editing, built-in spelling correction, programmable command completion, shell functions (with autoloading), a history mechanism, and a host of other features. Homepage: http://www.zsh.org/ Original-Maintainer: Debian Zsh Maintainers (pkg-zsh-devel@lists.alioth.debian.org) |
This package is now installed, and you can see information on its version, its dependencies, who created it, and so on.
To learn which files were installed as part of the zsh package, use the -L
option to dpkg
:
$ dpkg -L zsh |
The resulting output is quite lengthy, because the package includes many individual files. If you wanted to search for a particular file, you might want to pipe the output through grep
or less
.
For the final exercise, uninstall zsh (unless you want to try it and perhaps even use it regularly). To do so, use apt-get
and its remove
or purge
command. Listing 4 shows the code.
清单 4. 卸载 zsh
$ sudo apt-get remove zsh Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: zsh 0 upgraded, 0 newly installed, 1 to remove and 59 not upgraded. After this operation, 14.1 MB disk space will be freed. Do you want to continue [Y/n]? y (Reading database ... 148096 files and directories currently installed.) Removing zsh ... Processing triggers for man-db ... Processing triggers for menu ... |
Alternatively, you could use dpkg
and its -r
/--remove
or -P
/--purge
option. Listing 5 shows the code.
清单 5. 使用 dpkg 卸载
$ sudo dpkg -P zsh (Reading database ... 148096 files and directories currently installed.) Removing zsh ... Purging configuration files for zsh ... Processing triggers for man-db ... Processing triggers for menu ... |