英语法语西班牙语

Ad


OnWorks 网站图标

ara - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 ara

这是命令 ara 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


ara - 用于对 Debian 软件包数据库进行布尔正则表达式查询的实用程序

概要


批量 模式:
中间 [选项] 查询

在批处理模式下, 中间 将一个或多个查询作为参数,读取数据库文件
根据其配置,并将结果输出到 标准输出.

互动 模式:
中间 [选项] -i

随着 -i or -交互的 期权, 中间 读取数据库文件,然后提示
查询或命令的用户。 结果显示出来(在寻呼机的帮助下,例如
更多 or 如有必要),以及 中间 再次提示用户。 互动模式强
推荐,因为加载包数据库可能很长,但是一旦加载,查询就会运行
蛮快。 这是一个主要的优点 中间 通过工具,例如 dpkg-iasearch or
dpkg-dctrl.

对于键绑定,请参阅 KEY 绑定.

图形 接口 (GTK2):
图形界面, Xara(1), 由 Debian 软件包提供 Xara GTK.

询问 句法
查看 示例 快速介绍部分; Xara 有一些内置的帮助。 这
下面详细介绍语法。

商品描述


中间Xara 允许用户搜索 Debian 软件包数据库(包括
已安装和已卸载的软件包)使用由以下各项的布尔组合组成的强大查询
正则表达式作用于模式给定的字段。

例如,查询 部分=实用程序 & 取决于:(gtk or tk8 or or 哪里 or GNOME or qt)
& Debian的 & 将在该部分显示包 utils的 有图形的
接口(因为它们依赖于图形工具包或 X11 库),以及它们的
描述包含单词 Debian的.

基本原理


Debian 用户可以使用以下命令轻松安装软件 d选择 or apt-get的 安装.
他们可以从超过 3.1 个软件包中进行选择(在 Debian 30,000 不稳定版上)。 寻找合适的
打包可能相当困难。 虽然包被分类为粗略的部分,
仍然有太多的包,阅读所有描述是不可能的。

数据库文件很大,它们类似于邮件的语法使它们难以搜索
面向行的工具,如 grep。 存在命令,例如 dpkg-iasearch(1)或
dpkg-dctrl(1) 但他们的能力是有限的。 图形包管理工具,例如
as 能力倾向 or 突触 有搜索功能。 虽然 中间 能打电话 易于 安装或
删除包,它的定位是一个强大的搜索工具。 确实,名字 中间
来自土耳其语动词的祈使形式 搜索 这意味着“搜索”。

DEBIAN 数据库


Debian 软件包的数据库是一个巨大的文本文件,位于 /var/lib/dpkg/可用 (或
下的文本文件集合 /var/lib/apt/列表/)。 这些文件位于类似邮箱的
格式,典型的条目如下所示:

优先级:必填
部分:基地
已安装尺寸:460
来源:debian
维护者:Dpkg Development[电子邮件保护]>
错误:debbugs://bugs.debian.org
架构:i386
资料来源:dpkg
版本:1.10.24
替换:dpkg (<< 1.10.3)
取决于:libc6 (>= 2.3.2.ds1-4), ....
文件名:pool/main/d/dpkg/dselect_1.10.24_i386.deb
大小:119586
MD5sum: c740f7f68dab08badf4f60b51a33500a
描述:管理 Debian 软件包的用户工具
dselect 是用于安装、删除和安装的主要用户界面
管理 Debian 软件包。 它是 dpkg 的前端。

因此,每个包都由一组字段(如包、描述、版本...)描述。

QUERY 句法 AND 语义


在这里,我们详细描述了查询语法。 从 1.0 版开始, 中间 介绍新的,
非常传统的简化语法,任何使用过的人都应该熟悉
搜索引擎。 搜索词简单地与 AND, OR不是 布尔运算符。
看看 示例 本手册末尾的部分应为您提供
初始点。

考虑集合 D 文件中包含的 Debian 软件包描述
/var/lib/dpkg/可用 (或在文件下 /var/lib/apt/列表/)。 每个描述都是一个
一组形式的夫妇 (f,v) 哪里 fv 是字符串: f 是字段的名称
(即, 小包装, 产品描述, 文件名, 取决于等;); v 是它的价值。 因此 D 是一套
一组情侣,形成宇宙。 查询选择 Universe 的子集 D.
输出选项选择要显示的 Universe 选定部分的哪些字段,以及
如何显示它们。

查询
A 询问 是原子表达式的布尔组合。 一个 原子 表达 选择一个
集合的子集 D 的描述。 我称这组为 表达的; 如果 e
表示原子表达式,其含义表示为 并[e]. 布尔值的含义
原子表达式的组合只是其含义的布尔组合
成分。 换句话说,如果 e1e2 是原子表达式,那么 e1 & e2 是一个
查询,其含义是 e1e2; 和的意思
e1 | e2 是意义的结合 e1e2.

原子 表达式
原子表达式可以是以下形式 模式, /正则表达式/, 引用字符串, 字段规格
operator1 绳子字段规格 operator2 正则表达式.

布尔 运营商 常数
e1 & e2 (也 e1 AND e2, e1 e2)
这是逻辑合取(集合交集)。 返回 [e1] 的交集
和 [e2],即同时满足 e1 和 e2 的包。

e1 | e2 (也 e1 OR e2, e1 or e2)
这是逻辑析取(集合并集)。 [e1] 和 [e2] 的并集,即包
满足 e1、e2 或两者。

!e1 (也 不是 e1, 不能 e1)
这是逻辑否定(集合互补)。 [e1] 的补充,即包
不满足e1。

请注意: ~ 代表当前的默认字段说明符,而不是
互补运算符的别名。

true (也 所有)
所有描述的集合,即所有包。

false (也 没有任何)
空集,即没有包。

领域
字段说明符 字段规格 是一个以逗号分隔的字段模式列表。

字段模式就像简单的贝壳模式,它们可能包含星号(
代表任何东西)或问号(代表任何单个字符)。 他们是
不区分大小写。 它们指定一组字段。

举个例子 描述产品描述 指定字段集 { 产品描述 },而
德* 指定 { 描述, 取决于 }.

特殊说明符 ~ 表示当前的默认说明符(见下文)。

电流 领域 原子 表达式
需要重复字段说明符会使上述语法变得繁琐。 这就是为什么
有一个 当前 部分 说明符. 默认情况下,指定的当前字段是
说明,包装. 简化的原子表达式是简单的单词或简化的外壳
表达式(不需要用双引号括起来)并在
当前字段说明符中的字段。 它们可以由字母、数字、下划线、
破折号和句号。 它们可能包含被解释为的问号星
字段模式(即,作为简化的 shell 表达式)。 如果使用双引号,其他
可以使用字符和空格。

查询中的默认字段说明符 询问 可以改为 字段规格 通过简单地
为查询添加前缀 领域规格:. 这给 字段规格:查询. 但是如果 询问 is
复杂的(即,包含二进制布尔运算符)您需要包含 询问 in
括号,如 fieldspec:(查询1 or 查询2).

文字
文字 可以带或不带双引号; 没有双引号,
语法与 C 标识符相同,但您可以使用破折号,您必须以
拉丁字母 ([a-zA-Z]) 并且您可以继续使用拉丁字母、十进制数字或
下划线 ([a-zA-Z0-9_])。 在双引号内,允许所有字符,除了
双引号,前面必须有反斜杠。

变量
查询的结果可以存储在变量中,以后可能会被调用。 这不是
在批处理模式下非常有用,但在交互和图形模式下很有用。

变量名以美元开头并遵循变量的通常约定,即它们
可以是字母数字字符和符号(例如下划线、破折号等)的任意组合。

变量名区分大小写,因此 $已安装$已安装 是不同的。

为查询结果(即一组包)分配一个名为的变量 $变量
只需执行查询 $变量 := 询问. 然后你可以通过以下方式回忆这个特定的集合
简单地写 $变量.

示例: $已安装 := 状态:(已安装 & !未安装)

运营商
可以通过改变角度的方向来否定层次比较运算符
括号并在末尾添加或删除等号 (<= 成为 >)。 其他运营商
被否定如下: = 成为 !==~ 成为 !~。

字段规格=字符串
原子表达式选择具有字段的包 字段规格 有一个值 a
值完全等于 绳子.

字段规格 (fieldspec<=string, 字段规范>字符串, fieldspec>=string)
原子表达式选择具有字段的包 字段规格 其值是
严格小于 绳子. 使用的顺序是 Debian 版本控制顺序。 这个
order 与整数的自然顺序和 Debian 版本兼容
数字。 比较不含特殊字符的字符串时,字母排序
在数字之前,与我们习惯的字典 ASCII 顺序相反。 这意味着
十六进制数(例如 MD5 和)将没有它们通常的顺序。

需要注意的是 绳子 必须在运算符的右侧(即,您不能写
1000 < 尺寸).

字段规格=〜/表达/ (也 字段规格:/表达式/)
选择其字段命名的描述 字段规格 存在并且其值匹配,
区分大小写,正则表达式 表达.

字段规格=〜/表达式/我 (也 fieldspec:/表达式/i)
同上,但正则表达式不区分大小写。

字段规格=~/表达式/w (也 fieldspec:/表达式/w)
同上,但正则表达式区分大小写,只匹配
字边界。 请注意,字母到数字或数字到字母的转换是
被认为是单词边界。

字段规格=〜/表达式/ iw (也 fieldspec:/表达式/iw)
这里的正则表达式不区分大小写,并在单词边界处匹配。

原价 表达式
正则表达式在一对斜杠之间给出; 最后一个斜杠可以跟
表示标志的字母的可交换序列。 正则表达式语法类似于 sed:
分组括号和交替必须反斜线。 有关更多详细信息,请参阅
关于 Str 模块的目标 Caml 手册章节。 简而言之 (x,x1,x2 是元符号
表示正则表达式):

/./ 任何字符。

/托托/ 字面量字符串 toto。

/x1x2/ 级联。

/x1\|x2/
交替。

\(x1\)*
星封。

[光盘] 字符范围。

\b 字界。

/x/我 不区分大小写。

/x/w 在单词边界处。

备注
大多数查询将包含相当数量的 shell 元字符。 例如,
逻辑析取由管道字符表示,所有已知的 shell 都使用它。
由于实际命令的名称可能出现在
使用的表达方式; 因此,错误地成功设置 UNIX 管道是
有道理。

打电话时 中间 从批处理模式下的命令行,强烈建议您保护
您的查询用简单的引号括起来; 永远不要写这样的东西 中间
包*=〜/停止|重启|关机/ 因为这很可能会重新启动您的系统(并且
不正确的正则表达式语法,如果 or 重新启动 or 关闭 意思是:管道必须是
反斜杠)。 相反,应该写 中间 '包*=〜/停止\|重启\|关机 /'

配置


操作
-交互的, -i
交互模式; 提示查询,显示它。

-config (也为 Xara)
设置配置文件名(默认 $HOME/.ara/ara.config).

-无配置
不要尝试创建配置文件。

-无历史
不保存命令历史

政策和帮助 选项
-救命 (也为 Xara)
显示一些帮助

-关于 展示版权,感谢和奉献。

-版, -关于 (也为 Xara)
打印作者、许可证、版本和奉献(如果从 CLI 调用并退出)。

-例子
显示一些文档,包括示例退出。

-q
查询(例如,depends:xlibs & !package:xcalc)。

-询问
同上。

附加选项 属于 终端
-进步 (-没有进展)
加载数据库时显示或不显示进度指示器。

线
设置交互式显示终端的高度。 默认情况下,这是从
环境变量 线数 如果未定义,则为 25。

-列
设置交互式显示终端的宽度。 默认情况下,这是从
环境变量 如果未定义,则为 25。

-寻呼机 (-nopager)
使用(或不使用)在交互模式下显示长输出的寻呼机。 寻呼机
命令在配置文件中定义 $HOME/.ara/ara.config. 默认情况下
这是 /etc/替代品/寻呼机. 分页器仅在输出大小为
超过终端高度。

-调试 (也为 Xara)
启用调试信息

-调试级别 (也为 Xara)
设置调试级别(越高越详细,最大为 100,默认为 10)

屏 显: 风格
-新的 仅显示每个包的最新版本。

-旧 列出所有版本的包。

-短
显示满足查询的包的名称(以及它们的版本,如果 -旧 设置),与
每行多个包。

-list
相同,但每行显示一个包名称,并且没有大括号(默认)。

-生的
对于满足查询的每个包,显示所有选定的字段。

-表
将结果显示为表格。

-无国界
不要为表格输出绘制 ASCII 边框。

-边界
为表格输出绘制 ASCII 边框。

-计数
显示匹配包的数量。

-字段
将输出限制为指定的字段。 可选的宽度说明符与
-表 选项,否则忽略。 使用 * 显示所有字段(但请记住
从您的外壳中转义星号)。

-ast 将解析查询的抽象语法树转储到 stderr。

示例


中间 '部分=实用程序'
在 utils 部分列出每个包的名称。

中间 '部分=实用程序 !取决于:(gnome|kde|gtk)'
... 除了那些依赖字段与正则表达式 gnome\|kde\|gtk 匹配的

中间 -list '部分=实用程序 状态:(已安装 & !未安装)'
列出部分中所有已安装的软件包 utils的.

中间 -短 '部分=实用程序 ! 依赖:(gtk|gnome|kde) 优先级=可选'
... 每行列出多个名称,并仅显示可选包。

中间 -短 '部分=实用程序 & (! 依赖:(gtk|gnome|kde) | 尺寸<100000) & 优先级=可选'
好吧,仅当 100000 字节或更大时才排除 gtk、gnome 或 kde 内容。

中间 -无国界 -字段 包装、尺寸、维护器:20 -表 \
-短 '部分=实用程序 & (! 依赖:(gtk|gnome|kde) | 尺寸<100000) & 优先级=可选'

... 将上述结果中的 Package、Size 和Maintainer 字段显示为漂亮的ascii
表,将维护者字段限制为 20 个字符,但没有粗略的 ASCII 边界。

中间 -旧 -字段 包装:8,尺寸,描述:100 \
-表 '部分=游戏 不能 (取决于:(gtk|sdl|kde|opengl|gnome|qt)
or /射击\|杀死\|摧毁\|爆炸\|种族\|炸弹/iw
or /multi\(-\|\)玩家\|策略\|征服\|3\(-\|\)d/iw)
取决于:(xlibs or VGA)
尺寸 <= 1000000“

假设125列显示,显示包名的前XNUMX个字符,
以字节为单位的大小,以及描述的(第一行)的前一百个字符
游戏部分中大小不超过一百万字节的所有包,以及
不依赖于 GTK、SDL、KDE、OpenGL、Qt 或 Gnome 之类的花哨的东西,不要提及
在他们的描述中没有描述某种形式的暴力(射击、杀戮等)
作为多人游戏、策略、征服或三维,但仍依赖于 xlibs
或 svga 以排除基于控制台的游戏。

SPEED


中间 将整个数据库读入内存,然后处理查询。 由于数据库是
通常很大,这需要一些时间。 但是,查询然后运行得非常快。 所以指定
多个查询或使用 -交互的 选择摊销阅读成本
数据库。

使用 onworks.net 服务在线使用 ara


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    深层清洁
    深层清洁
    核对所有构建的 Kotlin 脚本
    来自 Gradle/Android 项目的缓存。
    当 Gradle 或 IDE 允许您时很有用
    向下。 该脚本已经过测试
    macOS,但是...
    下载深度清理
  • 2
    Eclipse Checkstyle 插件
    Eclipse Checkstyle 插件
    Eclipse Checkstyle 插件
    集成了 Checkstyle Java 代码
    审计员进入 Eclipse IDE。 这
    插件提供实时反馈
    用户关于viol...
    下载 Eclipse Checkstyle 插件
  • 3
    AstrOrz播放器
    AstrOrz播放器
    AstrOrz Player 是一款免费的媒体播放器
    软件,部分基于 WMP 和 VLC。 这
    播放器采用极简风格,带有
    十多个主题色,还可以
    B ...
    下载 AstrOrzPlayer
  • 4
    电影启动器
    电影启动器
    Kodi Movistar+ TV 是 XBMC/ 的 ADDON
    Kodi 许可分配器
    IPTV服务解码器
    Movistar Integrado en uno de los
    媒体中心马...
    下载 movistartv
  • 5
    代码::块
    代码::块
    Code::Blocks 是一个免费的、开源的、
    跨平台 C、C++ 和 Fortran IDE
    专为满足最苛刻的需求而打造
    它的用户。 它的设计非常
    扩展...
    下载代码::Blocks
  • 6
    之中
    之中
    中间或高级 Minecraft 界面
    和数据/结构跟踪是一种工具
    显示 Minecraft 的概览
    世界,而无需实际创造它。 它
    能够 ...
    下载烟雨
  • 更多 ”

Linux 命令

Ad