如何搜尋一個包是否在你的 Linux 發行版中
如果你知道包名稱,那麼你可以直接安裝所需的包。
在某些情況下,如果你不知道確切的包名稱或者你想搜尋某些包,那麼你可以在發行版的包管理器的幫助下輕鬆搜尋該包。搜尋會自動包括已安裝和可用的包。結果的格式取決於選項。如果你的查詢沒有輸出任何資訊,那麼意味著沒有匹配條件的包。這可以通過發行版的包管理器的各種選項來完成。我已經在本文中添加了所有可能的選項,你可以選擇最好的和最合適你的選項。
或者,我們可以通過whohas
命令實現這一點。它會從所有的主流發行版(例如 Debian、Ubuntu、 Fedora 等)中搜索,而不僅僅是你自己的系統發行版。
建議閱讀:
如何在 Debian/Ubuntu 中搜索一個包
我們可以使用apt
、apt-cache
和aptitude
包管理器在基於 Debian 的發行版上查詢給定的包。我為這個包管理器中包括了大量的選項。
我們可以在基於 Debian 的系統中使用三種方式完成此操作。
apt apt-cache aptitude
如何使用 apt 命令搜尋一個包
APT 代表
高階包管理工具
(APT),它取代了apt-get
。它有功能豐富的命令列工具,包括所有功能包含在一個命令(apt
)裡,包括apt-cache
、apt-search
、dpkg
、apt-cdrom
、apt-config
、apt-key
等,還有其他幾個獨特的功能。
APT 是一個強大的命令列工具,它可以訪問 libapt-pkg 底層庫的所有特性,它可以用於安裝、下載、刪除、搜尋和管理以及查詢包的資訊,另外它還包含一些較少使用的與包管理相關的命令列實用程式。
$ apt -q list nano vlc Listing... nano/artful,now 2.8.6-3 amd64 [installed] vlc/artful 2.2.6-6 amd64
或者,我們可以使用以下格式搜尋指定的包。
$ apt search ^vlc Sorting... Done Full Text Search... Done vlc/artful 2.2.6-6 amd64 multimedia player and streamer vlc-bin/artful 2.2.6-6 amd64 binaries from VLC vlc-data/artful,artful 2.2.6-6 all Common data for VLC vlc-l10n/artful,artful 2.2.6-6 all Translations for VLC vlc-plugin-access-extra/artful 2.2.6-6 amd64 multimedia player and streamer (extra access plugins) vlc-plugin-base/artful 2.2.6-6 amd64 multimedia player and streamer (base plugins)
如何使用 apt-cache 命令搜尋一個包
apt-cache
會在 APT 的包快取上執行各種操作。它會顯示有關指定包的資訊。apt-cache
不會改變系統的狀態,但提供了從包的元資料中搜索和生成有趣輸出的操作。
$ apt-cache search nano | grep ^nano nano - small, friendly text editor inspired by Pico nano-tiny - small, friendly text editor inspired by Pico - tiny build nanoblogger - Small weblog engine for the command line nanoblogger-extra - Nanoblogger plugins nanoc - static site generator written in Ruby nanoc-doc - static site generator written in Ruby - documentation nanomsg-utils - nanomsg utilities nanopolish - consensus caller for nanopore sequencing data
或者,我們可以使用以下格式搜尋指定的包。
$ apt-cache policy vlc vlc: Installed: (none) Candidate: 2.2.6-6 Version table: 2.2.6-6 500 500 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 Packages
或者,我們可以使用以下格式搜尋給定的包。
$ apt-cache pkgnames vlc vlc-bin vlc-plugin-video-output vlc-plugin-sdl vlc-plugin-svg vlc-plugin-samba vlc-plugin-fluidsynth vlc-plugin-qt vlc-plugin-skins2 vlc-plugin-visualization vlc-l10n vlc-plugin-notify vlc-plugin-zvbi vlc-plugin-vlsub vlc-plugin-jack vlc-plugin-access-extra vlc vlc-data vlc-plugin-video-splitter vlc-plugin-base
如何使用 aptitude 命令搜尋一個包
aptitude
是一個基於文字的 Debian GNU/Linux 軟體包系統的命令列介面。它允許使用者檢視包列表,並執行包管理任務,例如安裝、升級和刪除包,它可以從視覺化介面或命令列執行操作。
$ aptitude search ^vlc pvlc- multimedia player and streamer pvlc:i386- multimedia player and streamer pvlc-bin- binaries from VLC pvlc-bin:i386- binaries from VLC pvlc-data- Common data for VLC vvlc-data:i386- pvlc-l10n- Translations for VLC vvlc-l10n:i386- pvlc-plugin-access-extra- multimedia player and streamer (extra access plugins) pvlc-plugin-access-extra:i386- multimedia player and streamer (extra access plugins) pvlc-plugin-base- multimedia player and streamer (base plugins) pvlc-plugin-base:i386- multimedia player and streamer (base plugins) pvlc-plugin-fluidsynth- FluidSynth plugin for VLC pvlc-plugin-fluidsynth:i386- FluidSynth plugin for VLC pvlc-plugin-jack- Jack audio plugins for VLC pvlc-plugin-jack:i386- Jack audio plugins for VLC pvlc-plugin-notify- LibNotify plugin for VLC pvlc-plugin-notify:i386- LibNotify plugin for VLC pvlc-plugin-qt- multimedia player and streamer (Qt plugin) pvlc-plugin-qt:i386- multimedia player and streamer (Qt plugin) pvlc-plugin-samba- Samba plugin for VLC pvlc-plugin-samba:i386- Samba plugin for VLC pvlc-plugin-sdl- SDL video and audio output plugin for VLC pvlc-plugin-sdl:i386- SDL video and audio output plugin for VLC pvlc-plugin-skins2- multimedia player and streamer (Skins2 plugin) pvlc-plugin-skins2:i386- multimedia player and streamer (Skins2 plugin) pvlc-plugin-svg- SVG plugin for VLC pvlc-plugin-svg:i386- SVG plugin for VLC pvlc-plugin-video-output- multimedia player and streamer (video output plugins) pvlc-plugin-video-output:i386- multimedia player and streamer (video output plugins) pvlc-plugin-video-splitter- multimedia player and streamer (video splitter plugins) pvlc-plugin-video-splitter:i386- multimedia player and streamer (video splitter plugins) pvlc-plugin-visualization- multimedia player and streamer (visualization plugins) pvlc-plugin-visualization:i386- multimedia player and streamer (visualization plugins) pvlc-plugin-vlsub- VLC extension to download subtitles from opensubtitles.org pvlc-plugin-zvbi- VBI teletext plugin for VLC pvlc-plugin-zvbi:i386
如何在 RHEL/CentOS 中搜索一個包
Yum(Yellowdog Updater Modified)是 Linux 作業系統中的包管理器實用程式之一。Yum 命令用於在一些基於 RedHat 的 Linux 發行版上,它用來安裝、更新、搜尋和刪除軟體包。
# yum search ftpd Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * base: centos.hyve.com * epel: mirrors.coreix.net * extras: centos.hyve.com * rpmforge: www.mirrorservice.org * updates: mirror.sov.uk.goscomb.net ============================================================== N/S Matched: ftpd =============================================================== nordugrid-arc-gridftpd.x86_64 : ARC gridftp server pure-ftpd.x86_64 : Lightweight, fast and secure FTP server vsftpd.x86_64 : Very Secure Ftp Daemon Name and summary matches only, use "search all" for everything.
或者,我們可以使用以下命令搜尋相同內容。
# yum list ftpd
如何在 Fedora 中搜索一個包
DNF 代表 Dandified yum。我們可以說 DNF 是下一代 yum 包管理器(Yum 的衍生品),它使用 hawkey/libsolv 庫作為底層。Aleš Kozumplík 從 Fedora 18 開始開發 DNF,最終在 Fedora 22 中釋出。
# dnf search ftpd Last metadata expiration check performed 0:42:28 ago on Tue Jun9 22:52:44 2018. ============================== N/S Matched: ftpd =============================== proftpd-utils.x86_64 : ProFTPD - Additional utilities pure-ftpd-selinux.x86_64 : SELinux support for Pure-FTPD proftpd-devel.i686 : ProFTPD - Tools and header files for developers proftpd-devel.x86_64 : ProFTPD - Tools and header files for developers proftpd-ldap.x86_64 : Module to add LDAP support to the ProFTPD FTP server proftpd-mysql.x86_64 : Module to add MySQL support to the ProFTPD FTP server proftpd-postgresql.x86_64 : Module to add PostgreSQL support to the ProFTPD FTP : server vsftpd.x86_64 : Very Secure Ftp Daemon proftpd.x86_64 : Flexible, stable and highly-configurable FTP server owfs-ftpd.x86_64 : FTP daemon providing access to 1-Wire networks perl-ftpd.noarch : Secure, extensible and configurable Perl FTP server pure-ftpd.x86_64 : Lightweight, fast and secure FTP server pyftpdlib.noarch : Python FTP server library nordugrid-arc-gridftpd.x86_64 : ARC gridftp server
或者,我們可以使用以下命令搜尋相同的內容。
# dnf list proftpd Failed to synchronize cache for repo 'heikoada-terminix', disabling. Last metadata expiration check: 0:08:02 ago on Tue 26 Jun 2018 04:30:05 PM IST. Available Packages proftpd.x86_64
如何在 Arch Linux 中搜索一個包
pacman 代表包管理實用程式(pacman)。它是一個用於安裝、構建、刪除和管理 Arch Linux 軟體包的命令列實用程式。pacman 使用 libalpm(Arch Linux Package Management(ALPM)庫)作為底層來執行所有操作。
在本例中,我將要搜尋 chromium 包。
# pacman -Ss chromium extra/chromium 48.0.2564.116-1 The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser extra/qt5-webengine 5.5.1-9 (qt qt5) Provides support for web applications using the Chromium browser project community/chromium-bsu 0.9.15.1-2 A fast paced top scrolling shooter community/chromium-chromevox latest-1 Causes the Chromium web browser to automatically install and update the ChromeVox screen reader extention. Note: This package does not contain the extension code. community/fcitx-mozc 2.17.2313.102-1 Fcitx Module of A Japanese Input Method for Chromium OS, Windows, Mac and Linux (the Open Source Edition of Google Japanese Input)
預設情況下,-s
選項內建 ERE(擴充套件正則表示式)會導致很多不需要的結果。使用以下格式會僅匹配包名稱。
# pacman -Ss '^chromium-'
pkgfile
是一個用於在 Arch Linux 官方倉庫的包中搜索檔案的工具。
# pkgfile chromium
如何在 openSUSE 中搜索一個包
Zypper 是 SUSE 和 openSUSE 發行版的命令列包管理器。它用於安裝、更新、搜尋和刪除包以及管理倉庫,執行各種查詢等。Zypper 命令列對接到 ZYpp 系統管理庫(libzypp)。
# zypper search ftp or # zypper se ftp Loading repository data... Reading installed packages... S | Name| Summary| Type --+----------------+-----------------------------------------+-------- | proftpd| Highly configurable GPL-licensed FTP -> | package | proftpd-devel| Development files for ProFTPD| package | proftpd-doc| Documentation for ProFTPD| package | proftpd-lang| Languages for package proftpd| package | proftpd-ldap| LDAP Module for ProFTPD| package | proftpd-mysql| MySQL Module for ProFTPD| package | proftpd-pgsql| PostgreSQL Module for ProFTPD| package | proftpd-radius | Radius Module for ProFTPD| package | proftpd-sqlite | SQLite Module for ProFTPD| package | pure-ftpd| A Lightweight, Fast, and Secure FTP S-> | package | vsftpd| Very Secure FTP Daemon - Written from-> | package
如何使用 whohas 命令搜尋一個包
whohas
命令是一個智慧工具,從所有主流發行版中搜索指定包,如 Debian、Ubuntu、Gentoo、Arch、AUR、Mandriva、Fedora、Fink、FreeBSD 和 NetBSD。
$ whohas nano Mandrivanano-debug2.3.1-1mdv2010.2.xhttp://sophie.zarb.org/rpms/0b33dc73bca710749ad14bbc3a67e15a Mandrivanano-debug2.2.4-1mdv2010.1.ihttp://sophie.zarb.org/rpms/d9dfb2567681e09287b27e7ac6cdbc05 Mandrivanano-debug2.2.4-1mdv2010.1.xhttp://sophie.zarb.org/rpms/3299516dbc1538cd27a876895f45aee4 Mandrivanano2.3.1-1mdv2010.2.xhttp://sophie.zarb.org/rpms/98421c894ee30a27d9bd578264625220 Mandrivanano2.3.1-1mdv2010.2.ihttp://sophie.zarb.org/rpms/cea07b5ef9aa05bac262fc7844dbd223 Mandrivanano2.2.4-1mdv2010.1.shttp://sophie.zarb.org/rpms/d61f9341b8981e80424c39c3951067fa Mandrivaspring-mod-nanoblobs0.65-2mdv2010.0.srhttp://sophie.zarb.org/rpms/74bb369d4cbb4c8cfe6f6028e8562460 Mandrivananoxml-lite2.2.3-4.1.4mdv2010http://sophie.zarb.org/rpms/287a4c37bc2a39c0f277b0020df47502 Mandrivananoxml-manual-lite2.2.3-4.1.4mdv2010http://sophie.zarb.org/rpms/17dc4f638e5e9964038d4d26c53cc9c6 Mandrivananoxml-manual2.2.3-4.1.4mdv2010http://sophie.zarb.org/rpms/a1b5092cd01fc8bb78a0f3ca9b90370b Gentoonano9999http://packages.gentoo.org/package/app-editors/nano Gentoonano9999http://packages.gentoo.org/package/app-editors/nano Gentoonano2.9.8http://packages.gentoo.org/package/app-editors/nano Gentoonano2.9.7
如果你希望只從當前發行版倉庫中搜索指定包,使用以下格式:
$ whohas -d Ubuntu vlc Ubuntuvlc2.1.6-0ubuntu14.04 1Mallhttp://packages.ubuntu.com/trusty/vlc Ubuntuvlc2.1.6-0ubuntu14.04 1Mallhttp://packages.ubuntu.com/trusty-updates/vlc Ubuntuvlc2.2.2-5ubuntu0.16. 1Mallhttp://packages.ubuntu.com/xenial/vlc Ubuntuvlc2.2.2-5ubuntu0.16. 1Mallhttp://packages.ubuntu.com/xenial-updates/vlc Ubuntuvlc2.2.6-640Kallhttp://packages.ubuntu.com/artful/vlc Ubuntuvlc3.0.1-3build132Kallhttp://packages.ubuntu.com/bionic/vlc Ubuntuvlc3.0.2-0ubuntu0.132Kallhttp://packages.ubuntu.com/bionic-updates/vlc Ubuntuvlc3.0.3-133Kallhttp://packages.ubuntu.com/cosmic/vlc Ubuntubrowser-plugin-vlc2.0.6-255Kallhttp://packages.ubuntu.com/trusty/browser-plugin-vlc Ubuntubrowser-plugin-vlc2.0.6-447Kallhttp://packages.ubuntu.com/xenial/browser-plugin-vlc Ubuntubrowser-plugin-vlc2.0.6-447Kallhttp://packages.ubuntu.com/artful/browser-plugin-vlc Ubuntubrowser-plugin-vlc2.0.6-447Kallhttp://packages.ubuntu.com/bionic/browser-plugin-vlc Ubuntubrowser-plugin-vlc2.0.6-447Kallhttp://packages.ubuntu.com/cosmic/browser-plugin-vlc Ubuntulibvlc-bin2.2.6-627Kallhttp://packages.ubuntu.com/artful/libvlc-bin Ubuntulibvlc-bin3.0.1-3build117Kallhttp://packages.ubuntu.com/bionic/libvlc-bin Ubuntulibvlc-bin3.0.2-0ubuntu0.117Kall
via:https://www.2daygeek.com/how-to-search-if-a-package-is-available-on-your-linux-distribution-or-not/
作者:Prakash Subramanian 選題:lujun9972 譯者:MjSeven 校對:wxy
本文由LCTT 原創編譯,Linux中國 榮譽推出