Gentoo Linux查看已安装软件包

2023-05-16

Gentoo Linux查看已安装软件包

对于Gentoo Linux,需要一个名为Equery的软件来查看已安装软件包的信息。

Equery是一个用于简化常用 Portage 操作的工具。

此外,可以显示包依赖项、元数据和已安装文件。

如何安装:

Equery是使用app-portage/gentoolkit包安装的工具集的一部分:

root # emerge --ask app-portage/gentoolkit

有关安装equery或其他工具的更多信息,请访问Gentoolkit文章。

如何使用:

介绍:

equery是一个显示系统上已安装软件包有用信息的工具,equery基于模块系统。

每个模块都有一个简写名称。

例如,运行equery l gcc与运行equery list gcc相同。

调用--help选项(equery --help)将输出全局选项并列出所有可用模块及其简写名称。

将模块名称添加到末尾(equery --help module)将显示该特定模块的帮助信息。

执行man equery还将提供所有可用模块和选项的详细说明以及一些有用的示例。

以下是适用于大多数模块的功能列表。

user $ equery --quiet list gcc

sys-devel/gcc-4.3.2-r3

user $ equery --quiet list sys-devel/gcc

sys-devel/gcc-4.3.2-r3

user $ equery --quiet list '>=sys-devel/gcc-4'

sys-devel/gcc-4.3.2-r3

emerge一样,equery不理解部分的包名称:

user $ equery check zilla

!!! No package found matching zilla

emerge不同,equery可以在类别或包名称中接受类似shell的通配:

user $ equery check '*zilla*'

- Checking www-client/mozilla-firefox-3.0.14 ...
   90 out of 90 files passed

user $ equery check 'www-c*/*'

- Checking www-client/links-2.2 ...
  30 out of 30 files passed
- Checking www-client/mozilla-firefox-3.0.14 ...
  90 out of 90 files passed

大多数equery模块接受多个输入:

user $ equery hasuse sse sse2

- Searching for USE flag sse ...
  [IP-] [ ] media-libs/flac-1.2.1-r3 (0)
  [IP-] [ ] media-libs/speex-1.2_beta3_p2 (0)

- Searching for USE flag sse2 ...
  [IP-] [ ] dev-libs/openssl-0.9.8k (0)
  [IP-] [ ] x11-libs/pixman-0.16.0 (0)

一些模块还允许完整的正则表达式:

user $ equery -q list --portage-tree --full-regex '[kr]?flickr.*'

dev-dotnet/flickrnet-bin-2.2
dev-ruby/flickr-1.0.2-r1
dev-ruby/flickr-1.0.2-r2
dev-ruby/rflickr-20060201
media-gfx/kflickr-0.6
[...]

附注:
通配符支持取代了equery中许多旧的选项。

例如,

要对某个集合中的所有包执行操作,请使用'*'(星号)。

要对类别中的所有包执行操作,请使用'category-name/*'

警告:
在使用shell特殊字符时,

例如星号或大于号、小于号等,不要忘记使用引号将其括起来。

本文档的下几节将简要介绍不同的equery模块。

功能:

要查看 equery 的全部功能,只要不加任何参数运行即可:

user $ equery

Gentoo package query tool
Usage: equery [global-options] module-name [module-options]

modules (short name)
 (b)elongs list what package FILES belong to
 (c)hanges list changelog entries for ATOM
 chec(k) verify checksums and timestamps for PKG
 (d)epends list all packages directly depending on ATOM
 dep(g)raph display a tree of all dependencies for PKG
 (f)iles list all files installed by PKG
 h(a)s list all packages for matching ENVIRONMENT data stored in /var/db/pkg
 (h)asuse list all packages that have USE flag
 ke(y)words display keywords for specified PKG
 (l)ist list package matching PKG
 (m)eta display metadata about PKG
 (s)ize display total size of all files owned by PKG
 (u)ses display USE flags for PKG
 (w)hich print full path to ebuild for PKG

命令别名(Aliases

使用 equery 的一个常见方法是创建命令别名(aliases)。

当使用 bash 的时候这些别名(aliases)可以放到 ~/.bashrc 文件中:

文件 ~/.bashrc

alias eqf='equery f'
alias equ='equery u'
alias eqh='equery h'
alias eqa='equery a'
alias eqb='equery b'
alias eql='equery l'
alias eqd='equery d'
alias eqg='equery g'
alias eqc='equery c'
alias eqk='equery k'
alias eqm='equery m'
alias eqy='equery y'
alias eqs='equery s'
alias eqw='equery w'

查找文件来自哪个包:belongs (b)

user $ equery belongs -e /usr/bin/glxgears

- Searching for /usr/bin/glxgears ...
  x11-apps/mesa-progs-7.5.1 (/usr/bin/glxgears)

belongs可以使用-f选项搜索与正则表达式匹配的文件。

-e选项在找到匹配项后停止搜索,由于系统上的任何文件都不应归两个软件包所有,因此这是一个安全的操作。

也可以使用belongs (b)的简短版本。

例如,列出equery所属的包:

user $ equery b equery

- Searching for equery ... 
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib/python-exec/python2.7/equery)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python3.3/site-packages/gentoolkit/test/equery)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/bin/equery -> ../lib/python-exec/python-exec2)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python2.7/site-packages/gentoolkit/equery)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib/python-exec/python3.3/equery)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python2.7/site-packages/gentoolkit/test/equery)
  app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python3.3/site-packages/gentoolkit/equery)

查看ChangeLog条目:changes (c)

changes允许用户查看指定版本或一个范围版本的包的ChangeLog条目。

想象一下,在运行emerge --sync之后,Portage打印出一条消息说将要升级。

要查看更改了什么,可以使用此命令:

user $ equery changes portage

*portage-2.1.6.13 (03 May 2009)

03 May 2009; Zac Medico <zmedico@gentoo.org> +portage-2.1.6.13.ebuild:
 2.1.6.13 bump. This fixes bug #268398 (document econf automatic die)
 and bug #267104 (handle insufficient space interaction with userfetch).
 Bug #268228 tracks all bugs fixed since 2.1.6.11.

验证包的完整性:check (k)

有时检查包的完整性是有用的。

equery可以通过验证MD5值以及时间戳来检验一个软件包是否被破坏,替换或删除。

user $ equery check gentoolkit

- Checking app-portage/gentoolkit-0.3.0_rc7 ...
  71 out of 71 files passed

列出依赖该包的所有包:depends (d)

Ever wonder why a certain package has been installed on the system?

equery can tell which packages list it as a dependency with depends.

Include indirect dependencies with the -D option.

有没有想过为什么系统上安装了某个软件包?

equery使用depends可以列出哪些包依赖这个包。

使用-D选项显示间接依赖项。

user $ equery depends pygtk

- Searching for pygtk ...
  app-admin/pessulus-2.24.0 (>=dev-python/pygtk-2.6.0)
  app-editors/gedit-2.24.3 (python ? >=dev-python/pygtk-2.12)
  dev-libs/libgweather-2.24.3 (python ? >=dev-python/pygtk-2)
  dev-python/gnome-python-base-2.22.3 (>=dev-python/pygtk-2.10.3)
  dev-python/gnome-python-desktop-base-2.24.1 (>=dev-python/pygtk-2.10.3)
  [...]

第二个例子列出了所有直接依赖于udev的包:

user $ equery d udev

sys-auth/consolekit-0.4.5_p20120320 (acl ? >=sys-fs/udev-146-r1)
sys-fs/cryptsetup-1.4.1 (>=sys-fs/udev-124)
 (>=sys-fs/udev-182[static-libs])
 (<=sys-fs/udev-171-r6)
sys-fs/lvm2-2.02.88 (>=sys-fs/udev-151-r4)
virtual/dev-manager-0 (sys-fs/udev)
x11-libs/cairo-1.10.2-r2 (drm ? >=sys-fs/udev-136)

附注:
此输出将包括由USE标志控制的可选依赖项,

即上面(acl ? >=sys-fs/udev-146-r1)中的acl USE

即使该USE标志未激活。

如果USE标志处于活动状态,则包只是依赖项。

获取依赖图:depgraph (g)

depgraphdepends相反,将找到给定包依赖的所有ebuild(而不是依赖于该包的ebuild)。

当找到依赖项时,递归搜索该包的依赖项。

使用--depth选项控制树的深度。

user $ equery depgraph mozilla-firefox

- Searching for mozilla-firefox ...
- dependency graph for www-client/mozilla-firefox-2.0.0.19:
  `-- www-client/mozilla-firefox-2.0.0.19 `-- virtual/jre-1.6.0 (virtual/jre) [java]
  `-- virtual/jdk-1.6.0 (virtual/jdk-1.6.0*) `-- dev-java/icedtea6-bin (unable to resolve: package masked or removed)
  `-- dev-java/sun-jdk-1.6.0.15 `-- dev-java/java-sdk-docs-1.6.0.10 [doc]
   `-- app-arch/unzip-6.0-r1 `-- app-arch/bzip2-1.0.5-r1 [bzip2]
   `-- sys-libs/glibc-2.9_p20081201-r2 `-- sys-devel/gettext-0.17 [nls]
   `-- virtual/libiconv-0 (virtual/libiconv)
  [...]

注意如果设置了java USEjre是一个直接依赖项,jdk是一个间接依赖项

列出包安装的文件:files (f)

equery使用files模块,可以列出ebuild安装的所有文件。

尝试--tree以获得易于阅读的目录布局。

使用--filter查找指定某种类型的文件。

例如,要查找可执行文件的安装位置,请使用--filter=cmd,或者要快速查找配置文件位置,请尝试使用--filter=conf

user $ equery files --tree gentoolkit

 * Searching for gentoolkit ...
 * Contents of app-portage/gentoolkit-0.3.0_rc7:
 /etc
   > /eclean
      + distfiles.exclude
      + packages.exclude
   > /env.d
      + 99gentoolkit-env
   > /revdep-rebuild
      + 99revdep-rebuild
 /usr
   > /bin
      + eclean
      + eclean-dist -> eclean
      + eclean-pkg -> eclean
      + epkginfo
      + equery
      + eread
      + euse
      + glsa-check
      + revdep-rebuild
   > /lib
      > /python2.6
         > /site-packages
            > /gentoolkit
            + gentoolkit-0.3.0_rc7-py2.6.egg-info
               + __init__.py
               > /equery
                  + __init__.py
                  + belongs.py
                  + changes.py
                  + check.py
                  + depends.py
                  + depgraph.py
                  + files.py
[...]

另一个例子,列出media-sound/ncmpcpp安装的所有文件:

user $ equery f ncmpcpp

- Searching for ncmpcpp ...
- Contents of media-sound/ncmpcpp-0.5.10:
  /usr
  /usr/bin
  /usr/bin/ncmpcpp
  /usr/share
  /usr/share/bash-completion
  /usr/share/bash-completion/ncmpcpp
  /usr/share/doc
  /usr/share/doc/ncmpcpp-0.5.10
  /usr/share/doc/ncmpcpp-0.5.10/AUTHORS.bz2
  /usr/share/doc/ncmpcpp-0.5.10/NEWS.bz2
  /usr/share/doc/ncmpcpp-0.5.10/config.bz2
  /usr/share/doc/ncmpcpp-0.5.10/keys.bz2
  /usr/share/man
  /usr/share/man/man1
  /usr/share/man/man1/ncmpcpp.1.bz2

其他模块和命令行参数的说明可以参看equery man page (man equery)。

寻找具有特定USE标志的包:hasuse (h)

hasuse可用于查找具有给定USE标志的包。

hasuse不会指示标志是否已启用;

只是输出一个具有查询标志作为选项的ebuild列表。

有关获取此类信息的更多提示,请参阅equery手册页中的hasuse示例部分。

user $ equery hasuse qt3 qt4

- Searching for USE flag qt3 ...
  [IP-] [ ] app-crypt/pinentry-0.7.5 (0)
  [IP-] [ ] net-dns/avahi-0.6.24-r2 (0)
  [IP-] [ ] net-wireless/wpa_supplicant-0.6.9 (0)

- Searching for USE flag qt4 ...
  [IP-] [ ] net-dns/avahi-0.6.24-r2 (0)
  [IP-] [ ] net-wireless/wpa_supplicant-0.6.9 (0)

列出包: list (l)

list是一个简单但功能强大的模块,用于列出Portage树或overlay中已安装的软件包。

user $ equery list '*'

- Searching for * ...
  [IP-] [ ] app-admin/eselect-1.2.3 (0)
  [IP-] [ ] app-admin/eselect-ctags-1.10 (0)
  [IP-] [ ] app-admin/eselect-esd-20060719 (0)
  [IP-] [ ] app-admin/eselect-fontconfig-1.0 (0)
  [IP-] [ ] app-admin/eselect-opengl-1.0.8-r1 (0)
  [IP-] [ ] app-admin/eselect-python-20090824 (0)
  [IP-] [ ] app-admin/eselect-ruby-20081227 (0)
  [IP-] [ ] app-admin/eselect-vi-1.1.5 (0)
  [IP-] [ ] app-admin/perl-cleaner-1.05 (0)
  [IP-] [ ] app-admin/pessulus-2.24.0 (0)
  [IP-] [ ] app-admin/python-updater-0.7 (0)
  [IP-] [ ] app-admin/sudo-1.7.2_p1 (0)
  [...]

标准查询将通过给定包名称搜索已安装的包。

传入'*'显示集合中的所有包。

在最左边的字段中,可以看到所有上述包是I(nstalled)和P(ortage)树。

未被屏蔽(第二个字段为空白),装在默认slot (0)中。

使用本地选项在Portage树和overlays中查找包。

user $ equery list -po vim

- Searching for vim ...
  [-P-] [ ] app-editors/vim-7.0.235 (0)
  [-P-] [ ~] app-editors/vim-7.0.243 (0)
  [-P-] [ ] app-editors/vim-7.1.123 (0)
  [-P-] [ ~] app-editors/vim-7.1.330 (0)
  [-P-] [ ] app-editors/vim-7.2 (0)
  [-P-] [ ~] app-editors/vim-7.2.108 (0)
  [IP-] [ ] app-editors/vim-7.2.182 (0)
  [-P-] [ ~] app-editors/vim-7.2.238 (0)
  [-P-] [ ~] app-editors/vim-7.2.264 (0)

可以看到已安装版本7.2.182,并且overlay中没有可用的版本。

用户可以通过第二字段中的关键字~查看哪些版本被屏蔽了。

查看包元数据:meta (m)

Portage树中的每个包至少提供有关其维护者等的一些元数据(metadata)。

有用信息的数量取决于软件包维护者决定如何提供。

没有选项,meta返回一些基本的有用信息。

user $ equery meta gnucash

- app-office/gnucash [gentoo]
  Maintainer: tove@gentoo.org (Torsten Veller)
  Upstream: None specified
  Location: /usr/portage/app-office/gnucash
  Keywords: 2.2.9-r1:0: alpha amd64 ppc sparc x86
  Keywords: 2.2.9-r2:0:
  Keywords: 2.3.8:0:
  Keywords: 2.3.10:0: ~alpha ~amd64 ~ppc ~sparc ~x86

一些维护者提供有关包的额外信息,这可能非常有用:

user $ equery meta --description emacs

- app-editors/emacs
  GNU Emacs is an extensible, customizable text editor - and more. At its core
  is an interpreter for Emacs Lisp, a dialect of the Lisp programming language
  with extensions to support text editing. The features of GNU Emacs include:
  - Content-sensitive editing modes, including syntax coloring, for a wide
    variety of file types including plain text, source code, and HTML.
  - Complete built-in documentation, including a tutorial for new users.
  - Support for many languages and their scripts, including all the European
    "Latin" scripts, Russian, Greek, Japanese, Chinese, Korean, Thai,
    Vietnamese, Lao, Ethiopian, and some Indian scripts.
  - Highly customizable, using Emacs Lisp code or a graphical customization
    interface.
  - A large number of extensions that add other functionality, including a
    project planner, mail and news reader, debugger interface, calendar, and
    more. Many of these extensions are distributed with GNU Emacs; others are
    available separately.

查看包大小:size (s)

曾经很想知道特定包装占用多少空间?

由于包可以将文件放在多个目录中,因此通常的du -hc命令可能无法给出正确的数字。

不要担心,equery可以实现!

user $equery size openoffice-bin
 * app-office/openoffice-bin-3.1.1
         Total files : 4624
         Total size  : 361.38 MiB

使用size选项以使用人类易读的单位来打印所使用的总空间,

并列出程序包具有的文件总数。

要以字节为单位获取总大小,请使用--bytes

列出每个包的USE标志:uses (u)

equeryuses模块可以提供有关特定包可用的USE标志以及当前启用了哪些标志的信息。

user $ equery uses gst-plugins-meta

 * Searching for gst-plugins-meta ...
[ Legend : U - flag is set in make.conf       ]
[        : I - package is installed with flag ]
[ Colors : set, unset                         ]
 * Found these USE flags for media-plugins/gst-plugins-meta-0.10-r2:
 U I
 + + X      : Adds support for X11
 - - a52    : Enables support for decoding ATSC A/52 streams used in DVD
 + + alsa   : Adds support for media-libs/alsa-lib (Advanced Linux Sound
              Architecture)
 - - dvb    : Adds support for DVB (Digital Video Broadcasting)
 + + dvd    : Adds support for DVDs
 + + esd    : Adds support for media-sound/esound (Enlightened Sound Daemon)
 + + ffmpeg : Enable ffmpeg-based audio/video codec support
 + + flac   : Adds support for FLAC: Free Lossless Audio Codec
 - - mad    : Adds support for mad (high-quality mp3 decoder library and cli
              frontend)
 + + mpeg   : Adds libmpeg3 support to various packages
 - - mythtv : Support for retrieval from media-tv/mythtv backend
 + + ogg    : Adds support for the Ogg container format (commonly used by
              Vorbis, Theora and flac)
 - - oss    : Adds support for OSS (Open Sound System)
 + + theora : Adds support for the Theora Video Compression Codec
 + + vorbis : Adds support for the OggVorbis audio codec
 - - xv     : Adds in optional support for the Xvideo extension (an X API for
              video playback)

这里在gstreamer的插件meta-package中启用了许多USE标志,

但可以看出还有其他可用的USE标志。

有关USE标志的更多信息,请参阅Gentoo HandbookUSE Flags章节。

找到ebuild路径:which (w)

which是一个简单的脚本,可帮助用户快速找到ebuild的文件路径。

如果使用which传递未版本化的包名称,将返回最新的可安装ebuild版本的路径。

换句话说,如果键入emerge example/package,返回Portage将使用的ebuild

which还接受版本化程序包以获取该ebuild的路径。

user $ equery which gnome

/usr/portage/gnome-base/gnome/gnome-2.26.3.ebuild

最后,如果equery的上述功能都没有提供答案,请尝试使用which通过catlessgrep等程序手动搜索ebuild

user $ grep HOMEPAGE $(equery which gentoolkit)

HOMEPAGE="http://www.gentoo.org/proj/en/portage/tools/index.xml"

警告:
请注意,如果通过管道发送,equery当前会更改输出的格式。

管道格式旨在通过工具更容易解析,但可以通过添加 --no-pipe选项来关闭。

编写使用equery的脚本时,请注意此行为。

另请参阅

  • Q_applets - 用C编写的小而快的Portage辅助工具集。
  • eix - 一组通过二进制缓存搜索和区分,本地Portage树和overlays的实用程序。
  • Gentoolkit - 一套可以简化Gentoo系统管理的工具。

参考文献:

  • Equery - Gentoo Wiki
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Gentoo Linux查看已安装软件包 的相关文章

  • 如何从“git log”中查看 Git 中的特定版本?

    My git log显示为 enter code here git trial git log commit 4c5bc66ae50780cf8dcaf032da98422aea6e2cf7 Author king lt email pro
  • 通过 SSH 将变量传递给远程脚本

    我正在通过 SSH 从本地服务器在远程服务器上运行脚本 首先使用 SCP 复制该脚本 然后在传递一些参数时调用该脚本 如下所示 scp path to script server example org another path ssh s
  • UDP 广播发送失败:在 Linux 2.6.30 上“网络无法访问”

    我用udp广播写了一个程序 代码段如下 struct sockaddr in broadcast addr socklen t sock len sizeof broadcast addr bzero broadcast addr sock
  • 编写多个mysql脚本

    是否可以在复合脚本中包含其他 mysql 脚本 理想情况下 我不想为包含的脚本创建存储过程 对于较大的项目 我想分层维护几个较小的脚本 然后根据需要组合它们 但现在 我很乐意学习如何包含其他脚本 source是一个内置命令 您可以在 MyS
  • grails 上的同步块在 Windows 上有效,但在 Linux 上无效

    我有一个 grails 应用程序 它依赖于服务中的同步块 当我在 Windows 上运行它时 同步按预期工作 但当我在 ams linux 上运行时 会出现 StaleObjectStateException 该问题在以下示例中重现 cla
  • Gradle 1.3:build.gradle 不构建类

    这里有一个新问题 我有一个 build gradle 文件apply plugin java在其中 并与 java 项目 包关联 当我跑步时gradle build从命令行我得到 compileJava UP TO DATE process
  • Linux 中的电源管理通知

    在基于 Linux 的系统中 我们可以使用哪些方法 最简单的方法 来获取电源状态更改的通知 例如 当计算机进入睡眠 休眠状态等时 我需要这个主要是为了在睡眠前保留某些状态 当然 在计算机唤醒后恢复该状态 您只需配置即可获得所有这些事件acp
  • 我应该使用哪个 Linux 发行版作为 Xen 主机? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我为家庭办公室订购了一台服务器 我想用 Xen 对其进行分区 我认为这将使事情保持干净并且更容易维护 我将运行 MySQL PostgreSQL
  • 具有少量父设备属性的 udev 规则

    我需要复杂且通用的udev规则来确定插入任何 USB 集线器的特定端口的 USB 设备 所以 我必须结合设备树不同层的父属性 我有这个 udevadm info query all name dev ttyUSB0 attribute wa
  • 如何从类似于 eclipse 的命令行创建可运行的 jar 文件

    我知道 eclipse 会生成一个可运行的 jar 文件 其中提取并包含在该 jar 文件中的所有库 jar 文件 从命令提示符手动创建 jar 文件时如何执行类似的操作 我需要将所有 lib jar 解压到类文件夹中吗 目前我正在使用 j
  • python:numpy 运行脚本两次

    当我将 numpy 导入到 python 脚本中时 该脚本会执行两次 有人可以告诉我如何阻止这种情况 因为我的脚本中的所有内容都需要两倍的时间 这是一个例子 usr bin python2 from numpy import print t
  • 如何从linux命令行运行.exe可执行文件? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在 Windows 中有一个 abc exe 可执行文件 我可以使用 DOS 命令提示来执行此应用程序 并为其提供一些运行时变量 我想从
  • 如何调用位于其他目录的Makefile?

    我正在尝试这样做 我想打电话给 make Makefile存在于其他目录中 abc可以使用位于不同目录中的 shell 脚本的路径 我该怎么做呢 由于 shell 脚本不允许我cd进入Makefile目录并执行make 我怎样才能编写she
  • gethostbyname() 或 getnameinfo() 如何在后台工作?

    How gethostbyname or getnameinfo 在后台工作 include
  • 构建 makefile 依赖/继承树

    如果我解释得不好或者问了一些明显的问题 我很抱歉 但我是 Linux 内核的新手 而且有点深入 我们有一个嵌入式 Linux 系统 它附带一个 文档非常糟糕的 SDK 其中包含数百个文件夹stuff 大多数文件夹包含rules make m
  • 无法安装 WWW::Curl::Easy: SZBALINT/WWW-Curl-4.17.tar.gz : make NO

    我正在尝试在我的 Fedora 26 机器上安装 WWW Curl Easy gcc c I usr include D REENTRANT D GNU SOURCE O2 g pipe Wall Werror format securit
  • 如何在Python中独立于语言安装(linux)获取用户桌面路径

    我找到了 如何找到用户桌面的路径 的几个问题和答案 但在我看来它们都已失效 至少我找到的那些 原因是 如果用户安装的 Linux 不是英语 他或她的桌面很可能位于除 Desktop 例如 对于瑞典语 我相信它是在 Skrivbord 谁知道
  • 在Linux中断上下文中运行用户线程

    我正在编写一些定制的应用程序 并允许更改 Linux 内核中的中断处理程序代码 我有一个用户线程正在等待中断发生 如果发生中断 那么我要做的第一件事就是执行该用户线程 有什么办法让它发挥作用吗 Thanks 创建一个字符设备 这就是内核所做
  • 在 Ubuntu 16.04 上找不到 printf.c

    我最近切换到Ubuntu 16 04 我在用vscode作为 Ubuntu 上的 IDE 我配置了其他语言 但我无法做到这一点C C 我创建c cpp properties json launch json tasks json 当我开始编
  • 无需 cron 在后台发送邮件

    我想知道是否有一种方法可以运行 PHP 循环 以便在后台向订阅者发送几百封电子邮件 我的目标是格式化新闻通讯 单击发送 然后关闭浏览器或更改页面 当然 发送电子邮件的实际过程将在后台运行 不会因浏览器关闭而中断 我知道这可以通过 cron

随机推荐

  • ACME.SH 申请SSL证书(免费、自动更新)

    1 获取DNS密钥 xff08 1 xff09 获取域名服务商AccessKey ID及AccessKey Secret 我使用的域名是阿里云 xff0c 故需要去阿里云RAM管理平台获取 xff1a 其他服务商 xff0c 可以去指定的服
  • C语言fscanf函数读取结构化数据

    函数原型 xff1a int fscanf FILE restrict stream const char restrict format span class hljs keyword span fscanf 分隔符是 空格 tab 回车
  • 选择法排序

    选择法排序 xff1a 假设有N个数要按照从大到小的顺序排序 xff0c 选择法就是先设第一个数是最大的 xff08 进行第一次大循环 xff09 xff0c 然后将这个数与数组中剩下的数依次比较 xff0c 如果剩下的数中有比这个数大的
  • debian 10的安装DVD

    准备 下载debian 链接 xff1a https pan baidu com s 1BfyVmF3UgiEyKWzgQO90LA 提取码 xff1a evk9 复制这段内容后打开百度网盘手机App xff0c 操作更方便哦 来自百度网盘
  • Linux 最常用命令汇总

    常用命令 一 文件操作进入文件夹查看文件夹下文件创建文件夹复制文件移动文件删除文件查看文件内容实时查看文件内容创建文件编辑文件追加文件内容添加文件内容替换文件内容清空文件压缩解压文件分割文件文件合并文件对比显示文件树软链接一次执行多个she
  • CSP官网题目——炉石传说

    问题描述 玩家会控制一些角色 xff0c 每个角色有自己的生命值和攻击力 当生命值小于等于 0 时 xff0c 该角色死亡 角色分为英雄和随从 玩家各控制一个英雄 xff0c 游戏开始时 xff0c 英雄的生命值为 30 xff0c 攻击力
  • 【C51自学笔记】定时器

    CPU时序 xff1a v 振荡周期 xff1a 为单片机提供定时信号的振荡源的周期 xff08 晶振周期或外加振荡周期 xff09 v 状态周期 xff1a 2个振荡周期为1个状态周期 xff0c 用S表示 振荡周期又称S周期或时钟周期
  • Codeforces Round #706 (Div. 2)

    代码 xff1a span class token macro property span class token directive keyword include span span class token string lt iost
  • Codeforces Round #366 (Div. 2) A和B

    昨晚打了一个小时CF感悟最大的就是英文真是菜的抠脚 xff0c 第二题看了半天再结合样例解释才知道是什么意思 xff0c 第一题第一次提交代码输出漏写个单词真是醉了 xff0c 两题都掉分果真CF A Hulk 题意 xff1a 如果是1就
  • Matlab进行多项式的因式分解

    clear all span class token punctuation span clc syms x span class token punctuation span f1 span class token operator 61
  • 【linux】详解linux 下安装软件tar.gz, rpm,deb的方法

    在Linux系统中 xff0c 软件安装程序比较纷繁复杂 xff0c 不过最常见的有两种 xff1a 1 xff09 一种是软件的源代码 xff0c 您需要自己动手编译它 这种软件安装包通常是用gzip压缩过的tar包 xff08 后缀为
  • 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第 几号的那位。

    问题 xff1a 有n个人围成一圈 xff0c 顺序排号 从第一个人开始报数 xff08 从1到3报数 xff09 xff0c 凡报到3的人退出圈子 xff0c 问最后留下的是原来第 几号的那位 解决思路 我的解决思路是先给这n个人排序生成
  • 【AtCoder】【模拟】【模型转化】Camel and Oases(AGC012)

    题意 xff1a 有一个骆驼 xff0c n个绿洲遍布在数轴上 xff0c 第i个绿洲的坐标为x i xff0c 保证x i 单增 骆驼的驼峰有体积初始值V 当驼峰的体积变为v的时候 xff0c 驼峰中至多只能够存储v L的水 骆驼希望走完
  • windows10远程桌面登录ubuntu20.04

    一 ubuntu系统共享设置 设置远程共享密码 xff0c 密码要记住 xff0c 一会在windows远程登陆的时候 xff0c 第二步要输入密码 二 安装xrdp sudo apt get install xrdp 三 安装dconf
  • 配置ArchLinux系统

    配置ArchLinux系统环境 文章目录 配置ArchLinux系统环境配置 96 AUR 96 中国源桌面环境安装登录管理器安装字体与其他附加组件安装驱动安装中文输入法安装 xff1a 优化配置 96 TRM 96 磁盘优化 96 tlp
  • Linux字体推荐

    Linux字体推荐 以下是Linux推荐的字体在不同Linux发行版的不同包装名称 xff0c 每款都很精致 xff0c 请欣赏 xff01 ArchLinux字体软件包名称Debian字体软件包名称Fedora字体软件包名称Gentoo字
  • 安装配置fcitx输入法

    安装配置fcitx输入法 文章目录 安装配置 96 fcitx 96 输入法安装输入法引擎可用的 96 fcitx 96 输入法包括 xff1a 中文日文其语言 可用的 96 fcitx5 96 输入法包括 xff1a 中文日文其他语言 输
  • 使用adb安装或卸载卸载手机系统应用

    使用adb安装 卸载手机系统应用 准备工具 在浏览器下载并打开带有adb的工具 xff1b 手机打开 开发者选项 xff0c 在 开发者选项 中开启usb调试并连接电脑 xff0c 手机端选择 传输文件 xff1b 在手机端点击 一律允许计
  • OpenWRT好用的插件

    PPP xff08 连接Internet共享 xff09 xff1a 用于让路由器到外网的连接 xff1b 资源占用小 xff0c 官网有相应版本可供下载 xff0c 软件包名称为 ppp mod pppoe Adblock xff08 广
  • Gentoo Linux查看已安装软件包

    Gentoo Linux查看已安装软件包 对于Gentoo Linux xff0c 需要一个名为Equery的软件来查看已安装软件包的信息 Equery是一个用于简化常用 Portage 操作的工具 此外 xff0c 可以显示包依赖项 元数