当前位置: 首页>>技术问答>>正文


如何确定是否安装了特定程序?

, ,

问题描述

我想知道是否在Ubuntu上安装了一个程序 – 例如Chromium。手动或作为一个包。

我怎么知道程序是否通过命令行安装?

最佳解决办法

而且总是有apt-cache policy <package-name>(不需要sudo)。

未安装:

oli@bert:/$ apt-cache policy gnuift
gnuift:
  Installed: (none)
  Candidate: 0.1.14-11
  Version table:
     0.1.14-11 0
        500 http://archive.ubuntu.com/ubuntu/ oneiric/universe amd64 Packages

安装:

oli@bert:/$ apt-cache policy firefox
firefox:
  Installed: 8.0+build1-0ubuntu0.11.10.3
  Candidate: 8.0+build1-0ubuntu0.11.10.3
  Version table:
 *** 8.0+build1-0ubuntu0.11.10.3 0
        500 http://archive.ubuntu.com/ubuntu/ oneiric-updates/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu/ oneiric-security/main amd64 Packages
        100 /var/lib/dpkg/status
     7.0.1+build1+nobinonly-0ubuntu2 0
        500 http://archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages

dpkgdpkg -l | grep -E '^ii' | grep <package name>。如果没有安装它将不会显示输出。如果是,它会显示如下:

oli@bert:~$ dpkg -l | grep -E '^ii' | grep firefox
ii  firefox                                                     8.0+build1-0ubuntu0.11.10.3                            Safe and easy web browser from Mozilla
ii  firefox-branding                                            8.0+build1-0ubuntu0.11.10.3                            Safe and easy web browser from Mozilla - transitional package
ii  firefox-globalmenu                                          8.0+build1-0ubuntu0.11.10.3                            Unity appmenu integration for Firefox
ii  firefox-gnome-support                                       8.0+build1-0ubuntu0.11.10.3                            Safe and easy web browser from Mozilla - GNOME support
ii  firefox-locale-en                                           8.0+build1-0ubuntu0.11.10.3                            English language pack for Firefox

这显然是一个模糊的搜索,但如果你不确定你正在寻找哪个包,那就很方便了。

对于手动安装的东西……

有点难,但如果它们在当前路径上,你可以运行它们。这是一个使命,所以我宁愿跑:

oli@bert:/$ which chromium-browser
/usr/bin/chromium-browser

和:

oli@bert:/$ which gnuift
# returns nothing

哪个更好?

这取决于用户的理智。没有什么可以阻止某人安装一个名为chromium-browser的东西,而不是Chromium。他们甚至可以错误地打包它并安装它。这两种方法都不是100%确定的。

但假设主人是理智的 – 包装应该对大多数人来说足够好。

次佳解决办法

e,g,Chromium,在终端chromium-browser中运行如果安装,它将打开。如果不是你就会得到

chromium-browser: command not found 

检查包是否也安装

dpkg -l | grep chromium-browser

如果安装了,你会得到这样的:

command-line,package-management,ubuntu

要列出所有已安装的软件包,请使用

dpkg -l

要么

使用Ubuntu软件中心类型chromium

如果你看到这样的绿色图标:

command-line,package-management,ubuntu

这意味着它已安装:)

第三种解决办法

对于图形视图,打开Software Centre,然后单击顶部的Installed按钮:

command-line,package-management,ubuntu

如果您对系统内容感兴趣,可能需要单击Show X technical items按钮,但无论如何Chromium都会出现在列表中。

如果您需要命令行解决方案,那么dpkg是您的朋友:

$ dpkg -l
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
ii  accountsservic 0.6.14-1git1ub query and manipulate user account informatio
ii  acl            2.2.51-3       Access control list utilities
ii  acpi-support   0.138          scripts for handling many ACPI events
ii  acpid          1:2.0.10-1ubun Advanced Configuration and Power Interface e
ii  acroread       9.4.6~enu-0one Adobe Reader
ii  acroread-commo 9.4.6~enu-0one Adobe Reader - Common Files
ii  adduser        3.112+nmu1ubun add and remove users and groups
ii  adium-theme-ub 0.3.1-0ubuntu1 Adium message style for Ubuntu
ii  aisleriot      1:3.2.1-0ubunt Solitaire card games
ii  alacarte       0.13.2-2ubuntu easy GNOME menu editing tool
ii  alsa-base      1.0.24+dfsg-0u ALSA driver configuration files
ii  alsa-utils     1.0.24.2-0ubun Utilities for configuring and using ALSA
..........

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1564.html,未经允许,请勿转载。