英语法语西班牙文

OnWorks 网站图标

vcheckp - 云端在线

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

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

程序:

您的姓名


vcheck - 最新的程序版本检查器和自动下载器

概要


vcheck [选项]

视频检查 是用于在 HTTP 和 FTP 位置检查程序的最新版本的工具
给定要匹配的 URL 和(Perl 风格的)正则表达式列表,并可选地
自动下载它们。

有关命令行选项的完整列表,请运行

$ vcheck --帮助

商品描述


视频检查的行为会受到命令行选项和配置文件的影响,
同时作为它的数据文件,保存要检查的程序记录。
默认情况下,此配置文件是(请参阅“文件”), 〜/.vcheck. 它是根据一个
运行时详细打印的语法

$ vcheck -- 语法

可以找到有关一般语法和涉及的关键字含义的详细信息
在“语法”中。 配置文件的原理示例可以在
“例子”。

的基本目的 视频检查 是检查其配置中列出的程序的新版本
文件。 该脚本能够处理各种常见的版本号,包括
像“pre”或“alpha”等词。当发现新版本时,配置文件是
相应更新。

此外, 视频检查 如果有新版本,可用于自动下载文件
发现,甚至自动删除本地发现的过时版本。 一个特殊领域
配置文件中每个程序的记录告诉它最后下载的是哪个版本。
如有必要或需要,可以禁用特定程序的下载,或
一般禁用,特殊情况允许。 此外,您可以指定首选项
(一般情况下和每个程序的基础上)关于如果是新文件要下载什么样的文件
版本可用,例如,以不同的格式。

视频检查 还具有限制程序范围以检查或下载到子集的功能,
例如由以下定义:

· 一个正则表达式名称必须匹配

· 最低限度的紧迫性(可以在每个项目的基础上定义为 ,
中等)

· 那些自发现新的最新版本后尚未下载的程序

· 先前查询失败的那些程序(可选地,某个最小数量
次)

· 这些条件中的几个的联合组合

如果您在防火墙后面,可以通过多种方式定义 HTTP(-based) 代理
(按此顺序优先):

· 一个特定的 HTTP 或 FTP 代理,分别在配置文件中定义

· 配置文件中定义的通用HTTP+FTP代理

· 特定的 HTTP 或 FTP 代理,通过环境变量定义
分别为 $http_proxy/$HTTP_PROXY 和 $ftp_proxy/$FTP_PROXY(每个顺序为
优先)

视频检查 使用 ANSI 转义序列在视觉上增强其输出。 成功消息是
通常以绿色打印,错误消息为黄色或红色(信号严重性)。 这个
可以使用相应的命令行开关暂时禁用功能,或者
通过配置文件中的设置永久保存(参见“配置部分”)。

语法


当运行为

vcheck -- 语法

视频检查 将打印其配置文件的语法,即条目的正式结构
其中。 各个字段的名称与简短描述一起打印; 细节
关于它们的含义和用法可以在本节的下面找到。

默认情况下(即,如果脚本名称未更改(请参阅“文件”),如果未更改
通过“--file”覆盖), 视频检查 从中读取其配置 〜/.vcheck. 该文件将
每当有关程序的版本信息等更新时,也应定期重写。
在这种重写的过程中,条目将以可定义的方式排序,并且很难
将应用关键字和缩进方案的编码顺序。

基本上,配置文件可能包含两种类型的记录:配置部分和
任意数量的程序部分。 记录(或部分——这些术语同义使用
在本文档中)由一个标记其开头的关键字和一个名称(仅此
用于程序部分),后跟等号 (`=') 和一对花括号
("{}"),节的数据放置在它们之间。

部分数据是一系列设置或字段,具有多种类型,其中一些是
强制性的,而其他是可选的,由空格分隔(通常,换行,以
保持可读性)。 有以下类型的字段:

布尔
这种类型的关键字仅根据它们的存在来设置属性。 这方面的一个例子
配置 部分字段 dlddefaultno:

配置 = {
dlddefaultno
}

绳子
字符串字段由一个关键字和一个等号 (`=') 和一个字符串组成
表示字段的值。 如果字符串值包含空格或 (double)
引号,需要用(双)引号(`"')括起来。在这个
情况下,字符串内的引号和反斜杠都需要转义
反斜杠(`\')。 请注意,字符串值可能不会跨越多行,但必须是
包含在一个单一的,并且可能有关于值可能是什么的验证规则
喜欢。 此外,字符串字段通常需要具有非零长度。

这种类型的字段的一个例子是 PROG 部分字段 评论:

编 foo = {
[...]
评论 = 你好!
comment = "带有空格和 \"quotes\" 的注释!"
[...]
}

字符串枚举
字符串枚举基本上是字符串字段,但允许的范围有限
值。 这方面的一个例子是 PROG 部分字段 dl,其值必须是
“是”或“否”,如果存在:

编 foo = {
[...]
dl = 是
[...]
}

配置 部分
配置部分是可选的,如果存在,则包含全局设置
影响 视频检查的默认行为。 每个文件的配置部分都是唯一的
(虽然允许多次出现不冲突的设置,但这些将
一旦文件被重写,就被加入到一个单独的部分中)。

引入配置节的关键字是 配置。 因此, 配置 部分的
主要布局如下所示:

配置 = {
[...]
}

里面允许的关键字 ("[...]") 配置 部分在下面详细解释
(按字母顺序排列):

违约紧急 (枚举: , 中等, )
指定要假定的检查紧急程度,除非在一个
节目记录通过 紧急性. 紧急情况允许粗略地选择程序以
通过“--urgency”命令行参数检查。 在没有这个选项的情况下,
默认紧急程度是 中等.

删除旧的 (布尔值)
如果包含在 配置 部分,使脚本自动查找和
删除因新下载而过时的程序版本。 可能被覆盖
删除程序. 参见 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 后者 细节。

特别说明: 使用 VHDL 语言编写 at 您的 风险!

dlddefaultno (布尔值)
默认不下载。 这会导致脚本只下载那些程序
谁的 dl 选项明确设置为 使用“--download”参数运行时。

目录 (字符串:绝对目录路径)
此选项指定一个 绝对 路径(即相对于根目录)
存放下载文件的目录。 如果未通过此设置下载目录
或者更明确地通过 程序目录 选项,下载将最终在该目录中
脚本在其中执行。

执行程序 (串)
指定在任何成功下载后要执行的命令(除非为
一个特定的程序通过 程序文件)。 在这种情况下成功下载是一个
其文件类型已被识别且其完整性可被确认。 在单边形
环境,命令在任何 shell 环境变量下执行
$SHELL 定义。

命令字符串受以下占位符的扩展影响(请参阅
“占位符”的含义):“__DLURL__”、“__FILE__”、“__NEWVER__”、“__PROG__”、
“__RAWVER__”、“__URL__”。 此外,`~/' 将被用户的家所取代
目录。

配置文件 可能证明对例如自动转换有用,例如,将 gzip 压缩为 bzip
文件使用帮助脚本,或记录下载(见“提示”)。

首选项 (串)
用分号 (`;'-) 分隔的 Perl 风格正则表达式列表定义下载
喜好。 每个正则表达式都应该匹配一个特定的文件
可能或可能遇到的类型。 表达式的顺序
发生定义了它们的优先级(第一个匹配的表达式将决定哪个
将选择给定程序版本的一组可用文件类型进行下载)。
该值是有效的默认值,除非在每个选项上定义了特定的首选项。
程序基础使用 程序.dlprefs. 如果两者都不是 配置文件 也不 程序.dlprefs 设置,
如果出现多个模式匹配,则伪随机选择要下载的文件。

为了使这些下载首选项有意义,文件和版本匹配表达式
需要具有足够的非限制性以匹配多个可能的扩展。 为了
例如,"foo-("__VER__")\\.t" 将匹配 ".tar.gz" 和 ".tar.bz2" 文件,并且
设置 首选项 到 "\\.tar\\.bz2$;\\.tar\\.gz$" 将导致脚本最好
下载“.tar.bz2”文件。

重试 (字符串:非负整数)
下载失败后重试下载的次数。 如果这个选项不是
指定,重试次数默认为 0。如果重试失败,则认为重试失败
连接失败,检索到的文档为空,或者文件类型为
被认可并验证其完整性。

急切报价 (布尔值)
如果设置了此选项,则配置文件选项的所有字符串参数都将是
被双引号包围。 默认情况下仅在必要时使用引号(例如,
用于包含空格的字符串参数)。

回声执行 (布尔值)
如果设置了此选项,则执行的命令要归功于 新的执行 or 执行程序 选项将是
执行前回响。

ftp代理 (字符串:HTTP URL 或“服务器:端口”)
此选项指定用于从 FTP 位置检索文档的代理。 它
指定完整的 URL 或服务器和端口(如“server:port”)
代理,并且代理必须是基于 HTTP 的 FTP 代理。 此选项优先
超过 配置代理,如果指定。 如果两者都没有 配置文件 也不 配置代理 设置,
该脚本使用环境变量 $ftp_proxy 或 $FTP_PROXY 的值(在此
优先顺序)设置为,或者根本没有 FTP 代理。

http代理 (字符串:HTTP URL 或“服务器:端口”)
此选项指定用于从 HTTP 位置检索文档的代理。 它
指定完整的 URL 或服务器和端口(如“server:port”)
代理。 此选项优先于 配置代理,如果指定。 如果两者都没有
配置.httpproxy 也不 配置代理 已设置,脚本使用环境值
变量 $http_proxy 或 $HTTP_PROXY(按此优先级顺序)设置为,或不设置
根本没有 HTTP 代理。

最后检查 (字符串:日期格式为“YYYY-MM-DD HH:MM”)
上次运行脚本更新配置文件的日期和时间。 这个值
自动生成和更新。

新的执行 (串)
每当发现程序的新版本时要执行的命令,除非被覆盖
在每个程序的基础上通过 prog.n​​ewverexec. 该命令在任何情况下执行
shell 环境变量 $SHELL 定义。

命令字符串受以下占位符的扩展影响(请参阅
“占位符”的含义):“__NEWVER__”、“__PROG__”、“__RAWVER__”、“__URL__”。
此外,`~/' 将被用户的主目录替换。

NOCACHE (布尔值)
此选项通过不缓存检索到的文档(从
网址 位置)。 默认情况下,脚本缓存检索到的文档,以便程序
引用同一网页的记录不会导致(不必要的)多次检索
在同一届会议期间。

平原 (布尔值)
此选项使脚本通过以下方式生成普通(而不是 ANSI 增强的)输出
默认。 可以通过在命令行上指定“--noplain”来覆盖该选项。

代理 (字符串:HTTP URL 或“服务器:端口”)
此选项指定用于从 HTTP 和 FTP 检索文档的代理
地点。 它指定完整的 URL 或服务器和端口(如
代理的“服务器:端口”)。 通过此选项设置的代理可能会被覆盖
配置文件配置.httpproxy.

排序方式 (枚举: 姓名, 网址)
该选项指定是否排序 PROG 按程序名称条目(PROG 部分
标识符)或 URL 重写配置文件时。 默认是排序
名称。

克斯弗苏姆 (布尔值)
对应于命令行选项“--xf​​ersum”。 如果设置,脚本将打印一个
退出时接收到的数据总量。 可以通过覆盖
命令行开关“--noxfersum”。

超时 (字符串:非负整数)
尝试远程检索后应中止的时间(以秒为单位)。 这
默认值为 90 秒。

详细 (布尔值)
如果设置了此选项,脚本还将打印尚未打印的版本号
过时了。 默认是只打印新版本(和错误消息)。 这个
可以通过命令行开关“--noverbose”覆盖设置。

课程 截面
每个程序部分都为单个程序(包,...)定义了一个基于 HTTP 或 FTP URL 的程序
可以通过以下方式确定该程序的最新版本 视频检查 用一个
额外定义的正则表达式。 可以(假设)有任意数量的
配置文件中的程序部分。

引入程序段的关键字是 PROG。 每 PROG 部分由一个标识
唯一标识符(可能没有多个 PROG 具有相同标识符的部分)。
因此, 配置 部分的主要布局如下所示:

编 Foo = {
[...]
}

里面允许的关键字 ("[...]") a PROG 部分在下面详细解释
(按字母顺序列出)。 所有字段都是可选的并且允许,但每个字段一次 PROG
部分,除非另有明确说明。

评论 (字符串;允许多个)
任意注释字符串。 如果单个程序存在多个此类条目
记录,在重写配置文件时会保持它们的相对顺序。

删除旧的 (枚举: , 没有)
此选项定义脚本是否应查找并删除任何过时的版本
每次“成功”下载后,位于其下载目录中的程序的
该程序的新版本。 在此上下文中成功下载是任何下载
可以验证其完整性的已知类型的文件。 覆盖 配置.deleteold;的
删除过时的版本默认是禁用的,只能由
配置.deleteold or 删除程序.

任何发生 prog.dexplicit or 程序中级 在程序的记录中禁止
应用 删除旧的 该程序。

特别说明: 使用 VHDL 语言编写 at 您的 风险!

禁用 (布尔值)
此选项会导致相关程序记录被忽略(除非命令
使用线路开关“--force”)。

dl (枚举: , 没有)
此选项指定在脚本运行时是否下载有问题的程序
使用“--download”选项。 默认情况下,当一个新的程序将被下载
找到版本并使用所述参数运行脚本,除非 config.dlddefaultno is
设置。 程序文件 覆盖后一个选项。

目录 (串)
此选项在每个程序的基础上指定一个下载目录。 如果目录是
绝对(即相对于根目录,如前导斜杠所示),它
将被视为绝对路径,否则将被视为相对于任一路径
配置文件目录,如果指定,或脚本正在执行的目录。

dldir 字符串受以下占位符的扩展影响(请参阅
“占位符”的含义):“__NEWVER__”。

目录 (串)
此选项指定最后下载版本的下载目录
程序。 与“prog.dldir”不同,它不包含“PLACEHOLDERS”。 如果目录是
绝对(即相对于根目录,如前导斜杠所示),它
将被视为绝对路径,否则将被视为相对于任一路径
配置文件目录,如果指定,或脚本正在执行的目录。

此选项仅用于存储“PLACEHOLDER”空闲 dldir,它会在每个新的
下载。

执行程序 (字符串,可能为零长度)
指定在程序下载成功后要执行的命令,
压倒一切 配置文件 (如果设置)。 在这种情况下成功的下载是
文件类型已被识别,其完整性可以得到确认。 命令是
在环境变量 $SHELL 设置的任何 shell 下执行。

命令字符串受以下占位符的扩展影响(请参阅
“占位符”的含义):“__DLURL__”、“__FILE__”、“__NEWVER__”、“__PROG__”、
“__RAWVER__”、“__URL__”。 此外,`~/' 将被用户的家所取代
目录。

隐式的 (字符串:HTTP 或 FTP URL;允许多个)
指定显式下载 URL。 每当有问题的程序的新版本
找到,通过此选项指定的 URL 将被下载(如果请求)而不是
网址程序正则表达式.

命令字符串受以下占位符的扩展影响(请参阅
“PLACEHOLDERS”的含义):“__NEWVER__”、“__RAWVER__”。

此选项还可用于,例如,在检测到新的包时下载多个包
版本,前提是可以指定它们的名称。 有关此示例,请参见
“例子”。

中间的 (布尔值)
如果设置了此选项,则中间版本(即在 网址
版本号 但比可用的最新版本旧)也将被下载
如果在发现程序的新版本时遇到任何问题。 这个选项是
用于下载补丁等,它们连续地相互依赖。
默认是忽略中间版本。

首选项 (串)
用分号 (`;'-) 分隔的 Perl 风格正则表达式列表定义下载
喜好。 每个正则表达式都应该匹配一个特定的文件
可能或可能遇到的类型。 表达式的顺序
发生定义了它们的优先级(第一个匹配的表达式将决定哪个
将选择给定程序版本的一组可用文件类型进行下载)。
此值覆盖可能通过以下方式定义的默认首选项 配置文件。 如果
也不 配置文件 也不 程序.dlprefs 设置,选择要下载的文件
伪随机,如果发生多个模式匹配。

为了使这些下载首选项有意义,文件和版本匹配表达式
需要具有足够的非限制性以匹配多个可能的扩展。 为了
例如,"foo-("__VER__")\\.t" 将匹配 ".tar.gz" 和 ".tar.bz2" 文件,并且
将 `dlprefs' 设置为 "\\.tar\\.bz2$;\\.tar\\.gz$" 将使脚本优先
下载“.tar.bz2”文件。

推荐人 (字符串,可能为零长度)
指定下载程序包时使用的 HTTP 引用。 默认情况下,
版本决定文件(即最后一个 网址 值,占位符扩展)是
用过的。

版本号 (串)
此参数存储有问题的程序的最后下载版本,并且是
每当发现新版本时更新(除非在只读模式下运行)。 如果
程序转换 设置,存储的版本将从一个转换
匹配 程序正则表达式.

错误 (字符串:非负整数)
此字段存储版本检查期间的错误数量,并在检查一次后重置
成功。 此字段的高值表示 URL 或文件名已过时
匹配正则表达式并将被脚本注释。 此外,它
可以通过“--errors”将操作范围限制为错误记录
命令行参数。

最后检查 (字符串:格式为“YYYY-MM-DD HH:MM”的日期)
此字段存储上次检查相关程序的日期和时间(无论
无论成功或失败)。

新的执行 (字符串,可能为零长度)
每当发现程序的新版本时要执行的命令,覆盖
可能的定义通过 配置.newverexec. 该命令在任何shell下执行
环境变量 $SHELL 定义。

命令字符串受以下占位符的扩展影响(请参阅
“占位符”的含义):“__NEWVER__”、“__PROG__”、“__RAWVER__”、“__URL__”。
此外,`~/' 将被用户的主目录替换。

正则表达式 (细绳; 必须; 允许多个)
本篇 必须 字段应该包含一个 Perl 风格的正则表达式匹配
给定文档的所需版本的相关程序 网址 作为输入。
请注意,正则表达式不需要匹配完整的文件名——在考虑下载时,
该脚本将根据需要自动扩展匹配项。

匹配程序版本号的正则表达式必须写成这样
如果整个表达式匹配,$1 部分(请参阅“perlre”手册页)的方式是
正是版本号。 该选项受占位符扩展的影响:“__VER__”
将被预先制造的(非贪婪的)正则表达式匹配版本取代
符合许多常见方案中的任何一种的数字。 请注意,为了产生一个
$1 按要求匹配,"__VER__" 仍然需要放在括号中。 例如
程序正则表达式 值,请参见“示例”。

为了应对特别复杂的远程场景(如依赖版本
目录层次结构),多个 网址, 正则表达式改造 可以指定每个字段
程序。 在这种情况下,脚本将匹配 网址并且 正则表达式es 从第一个开始
并不断前进到每种类型的下一个字段(同步,只要两者都
它们可用,或者使用最后一个可用的)并匹配正则表达式
对应的文件。 为了使这有任何用处,第二个(和
以后各有潜力) 网址 必须包含“__NEWVER__”或“__RAWVER__”
占位符(参见“PLACEHOLDERS”),它将被之前匹配的最新的替换
[transformed] 版本(对 正则表达式)。 会的版本
最终被认为是有关程序的最新版本将是确定的
通过匹配最后一个 正则表达式 反对最后 网址s 文件。 举例说明如何
可以在实践中使用,参见“示例”。

可能的倍数 改造 字段将与各自的同步处理 网址
正则表达式 字段只要附加 改造 字段被指定。 如果还有更多
网址正则表达式 字段比 改造 字段,最后指定的 改造 表达
将用于进一步的迭代。 另一方面,如果有更多 改造
网址/正则表达式 字段,将根据最后一个进行进一步的检索/匹配
网址/正则表达式. 然而,作者不知道这有什么用。

当配置文件被重写时,多个 网址, 正则表达式,和/或 改造 字段将是
交错排列以促进理解并保持它们的相对顺序。

变换 (字符串;允许多个)
转换 $_ 中版本号的 Perl 表达式(由 程序正则表达式 比赛)
以某种方式用户认为足够。 有关这如何派上用场的示例,请参阅
“例子”。 代码片段的返回值,即其最后一个的值
表达式,用作转换后的版本,此后将成为
相关程序的版本比较。

(枚举: , 中等, )
定义检查指定程序的紧急程度。 紧急情况允许
通过“--urgency”命令行参数粗略选择要检查的程序。
如果没有定义紧急程度,则默认为 配置.defaulturgency (如果设置)或
中等.

网址 (字符串:HTTP 或 FTP URL; 必须; 允许多个)
本篇 必须 字段定义要检索的 HTTP 或 FTP URL 作为要扫描的文档
为了通过匹配来检测新程序版本的可用性
程序正则表达式. 请注意,如果 URL 是一个目录(尤其是一个 FTP 目录,它是
应该被列出),URL 需要 以斜线 (`/') 结尾。 如果目标文件
是一个 HTML 页面,它的源代码将与 程序正则表达式, 针对链接
嵌入在文档中。 可以通过以下方式指定备用下载 URL
prog.dexplicit.

为了应对特别复杂的远程场景(如依赖版本
目录层次结构),多个 网址, 正则表达式改造 可以指定每个字段
程序。 在这种情况下,脚本将匹配 网址并且 正则表达式es 从第一个开始
并不断前进到每种类型的下一个字段(同步,只要两者都
它们可用,或者使用最后一个可用的)并匹配正则表达式
对应的文件。 为了使这有任何用处,第二个(和
以后各有潜力) 网址 必须包含“__NEWVER__”或“__RAWVER__”
占位符(参见“PLACEHOLDERS”),它将被之前匹配的最新的替换
[transformed] 版本(对 正则表达式)。 会的版本
最终被认为是有关程序的最新版本将是确定的
通过匹配最后一个 正则表达式 反对最后 网址s 文件。 举例说明如何
可以在实践中使用,参见“示例”。

可能的倍数 改造 字段将与各自的同步处理 网址
正则表达式 字段只要附加 改造 字段被指定。 如果还有更多
网址正则表达式 字段比 改造 字段,最后指定的 改造 表达
将用于进一步的迭代。 另一方面,如果有更多 改造
网址/正则表达式 字段,将根据最后一个进行进一步的检索/匹配
网址/正则表达式. 然而,作者不知道这有什么用。

当配置文件被重写时,多个 网址, 正则表达式,和/或 改造 字段将是
交错并保持它们的相对顺序。

版本 (串)
存储程序的最新已知版本。 相比之下 程序转移,这是
检测到的最新版本,而不是下载的最新版本。 如果一个 程序转换
选项设置,存储的版本将从匹配的版本转换
程序正则表达式.

占位符
在许多字符串字段中,某些占位符会被运行时替换
值。 这些占位符是(按字母顺序):

“__DLURL__”
下载相应程序最新版本的(文件)URL。

“__文件__”
相应最新版本下载的本地路径。

“__新__”; "__NEWVER1__", "__NEWVER2__", ...
"__NEWVER__" 替换为最新的 转化 (或未转换,如果没有 改造
表达式有效)由脚本确定的可用版本。

当使用多个 网址/正则表达式/改造 领域以应对更复杂的远程
站点层次结构,“__NEWVER1__”,“__NEWVER2__”,...提供中间访问权限-
确定的版本。 在这种情况下,“__NEWVER1__”被替换为匹配的版本
第一位 网址/正则表达式/改造 元组,“__NEWVER2__”匹配匹配的版本
第二 网址/正则表达式/改造 元组等等。

“__PROG__”
各自的名称(标识符) PROG 部分。

"__RAWVER__"; "__RAWVER1__", "__RAWVER2__", ...
“__RAWVER__”由脚本确定的最新可用版本替换。

当使用多个 网址/正则表达式 领域以应对更复杂的远程站点
层次结构,“__RAWVER1__”,“__RAWVER2__”,...允许访问中间确定的
版本。 在这种情况下,“__RAWVER1__”被替换为第一个匹配的版本
网址/正则表达式 对,“__RAWVER2__”匹配第二个匹配的版本 网址/正则表达式 对,
等等。

“__URL__”
用于确定最新程序版本的(最后一个和扩展的)URL。

“__VER__”
匹配版本号的预制(非贪婪)正则表达式
与许多常见方案中的任何一种。

HINTS


· 如果你使用 Vim(版本 5 或更高版本)作为你的编辑器,你可以告诉 vcheck 创建一个 Vim
语法文件通过运行脚本在编辑器中提供语法高亮显示

vcheck --create-vim-语法文件

如果你希望 Vim 在编辑时自动应用语法规则 "〜/.vcheck",
添加这一行:

au BufEnter */.vcheck 所以 $VIM/syntax/vcheck.vim

或者,另一种是具有显式路径的:

au BufEnter */.vcheck so /path/to/syntax/vcheck.vim

给你的“〜/ .vimrc"并替换一个合适的路径。当然你也需要
确保将文件复制到指定目录中。

· 默认检查新版本并运行没有问题 视频检查 再次
之后下载更新的软件包。 运行脚本

vcheck-dc

or

vcheck --下载 --catch-up

分别尝试仅下载最新下载版本具有的那些文件
已被有意淘汰,无需再次检查所有其他程序的新版本。

· 要仅检查在最近一次尝试中失败的那些程序位置,请运行

v检查-e

or

vcheck --错误



· 如果添加一行

dlretry = NUM​​BER

到您的配置文件 配置 部分, 视频检查 将重试下载最多 NUMBER 个文件
次,如果它检测到它接收不完整。 在以下情况下会出现这种情况:

- 文件大小为零

- 下载文件的扩展名被识别,并由各自的检查
解压器等导致错误

· 视频检查 缓存从 URL 检索的数据(除非 NOCACHE 在配置文件中设置),所以如果
你指定 究竟 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 不同程序的 URL,这不会导致多个
检索,从而提高效率。

· 如果您想知道实际累积了多少节目记录
你的配置文件随着时间的推移,运行 视频检查 as

vcheck --语法

这将检查配置文件的语法,并且作为副作用,打印配置文件的数量
程序注册。

· 即使你从其他来源知道有 is 程序的新版本 视频检查
配置为,您仍然可以使用它来下载包。 只需使用其
匹配能力,例如:

vcheck -dm 富

· 如果您的记录之一指向某个程序的补丁,并且您想确保
下载时不会错过中间的(假设你没有运行 视频检查 in
下载模式过于频繁),您可以添加布尔字段 中间的 以及
配置文件中的相应程序部分,以及 视频检查 将尝试下载所有
版本比 版本号. 请注意,在这些情况下, 版本号 被设置为
下载尝试成功的最新(中间)版本(这意味着,
例如,如果要下载版本 1 到 3,并且除了
版本 1 成功, 版本号 尽管如此,仍将设置为 3)。 一个有用的例子:

程序 Linux/补丁 = {
中间的
dlprefs = \.bz2$;\.gz$
dl版本 = 2.3.6
正则表达式 = 补丁-(__VER__)\.[bg]z
网址= ftp://ftp.kernel.org/pub/linux/kernel/v2.3/
版本 = 2.3.9
}

假设 2.3.9 仍然是最新版本,在下载模式下运行它会
检索 Linux 内核补丁 2.3.7 到 2.3.9, *.bz2 偏爱 *.gz (但
如果缺少前者,则接受后者,而不是跳过下载
完全)。

· 可能存在复杂的远程站点结构,涉及依赖版本的目录
hierarchies,比如服务器对AC系列Linux内核使用的布局
补丁。 该站点的主要布局看起来(或曾经看起来)是这样的:

...
.../linux-2.4/2.4.8/patch-2.4.8-ac1.gz
.../linux-2.4/2.4.8/patch-2.4.8-ac2.gz
...
.../linux-2.4/2.4.9/patch-2.4.9-ac1.gz
.../linux-2.4/2.4.9/patch-2.4.9-ac2.gz
...

这里的问题是底层目录的名称根据
AC补丁基于的常规Linux版本。 处理这个最
方便地在 视频检查 看起来像这样:

prog Linux/补丁/AC = {
中间的
网址= http://www.kernel.org/.../linux-2.4/
正则表达式 = (\d+\.\d+\.\d+)
网址= http://www.kernel.org/.../linux-2.4/__NEWVER__/
正则表达式 = 补丁-(__VER__-ac\d+)\.gz
}

(请注意,为了便于阅读,URL 已被缩写。)
配置会导致 视频检查 首先检索第一个 网址 字段文件
并匹配第一个 正则表达式 反对。 然后它将继续第二个 网址 领域的
文档,将其与第二个匹配 正则表达式,替换其 __新__ 占位符由
先前匹配的最新版本。 最终确定为当前的版本
节目记录的版本是由最后一场比赛确定的版本。

在旁注中,在比赛期间确定的版本号比之前更早
一个可以通过格式的分隔符访问 __新的#__,其中“#”是一个数字
表示编号 (1..) 网址/正则表达式 对的版本匹配它应该被替换
经过。 有关该机制的更多详细信息,请参阅 网址正则表达式 in
“程序部分”和“占位符”。

关于这个例子,留给用户去弄清楚如何将记录扩展到
甚至自动处理对 Linux 内核次要版本的更改。 “:-)”

这是三层层次结构的另一个示例,用于适应 GIMP 的站点
某一时间点的布局:

程序 GIMP/开发/补丁 = {
comment = "如果没有可用的补丁,将下载完整的包。"
dlprefs = 补丁-.*?\.bz2$;补丁-.*?\.gz$;gimp-.*?\.bz2$;gimp-.*?\.gz$
网址= ftp://ftp.gimp.org/pub/gimp/
正则表达式 = (?
网址= ftp://ftp.gimp.org/pub/gimp/v__NEWVER__/
正则表达式 = (?
网址= ftp://ftp.gimp.org/pub/gimp/v__NEWVER1__/v__NEWVER__/
正则表达式 = (?:patch|gimp)-(__VER__)\.[bgt]
}

· 如果您想检索某个程序的版本,例如,格式为“dd-mm-”的日期
yyyy”,这会被版本比较器误解,因为最
重要的子“版本”不是最初的版本。 您可以通过指定解决此问题
一些 Perl 表达式在各自的程序中转换原始版本
部分,例如:

变换 = "s/(\d+)-(\d+)-(\d+)/$3-$2-$1/; $_"

这段代码在 $_ 中给出了各自的版本,经过评估后,
视频检查 将原始值替换为 评估() 返回。 或者,这
将达到相同的目标:

变换=“加入'-',反向拆分/-/,$_”

· 一些站点使用重定向脚本下载 URL。 考虑一种情况,其中一个
下载页面列出了一个程序的可用包,链接指向一些
服务器端脚本将您的浏览器指向某个 URL is in 重定向 by
HTTP 手段 到最终文件 URL(例如,PHP 站点,用于使用此
一次模糊的计划)。 处理这种情况的方法 视频检查 在于使用一个
隐式的 像这样的领域:

编程 PHP = {
隐式 = http://www.php.net/distributions/php-__VER__.tar.gz
正则表达式 = php-(__VER__)\.t
网址= http://www.php.net/downloads.php
}

实际上,这将使用实际 网址 字段仅用于确定当前版本
然后将其粘贴到对应下载地址的模式中,从而绕过
重定向。 此功能的明显缺点在于它增加了
对服务器端访问结构的依赖。

· 假设您对通过多个包分发的某个程序感兴趣(例如
Vim,它被分成一个源和一个运行时包)。 办法 视频检查 提供给
再次应付这个是 隐式的 选项​​:

程序 Vim = {
隐式 = ftp://ftp.vim.org/pub/editors/vim/unix/vim-__VER__-src.tar.gz
隐式 = ftp://ftp.vim.org/pub/editors/vim/unix/vim-__VER__-rt.tar.gz
正则表达式 = vim-(__VER__)(-src)?\.tar
网址= ftp://ftp.vim.org/pub/editors/vim/unix/
}

· 为了有 视频检查 跟踪已下载的内容(以及何时下载),您可以添加
像这样的配置文件:

配置 = {
dlexec = "echo `date +%Y-%m-%d` '__PROG__' '__NEWVER__' >>〜/.vchecklog"
}

但是请注意,特定于程序的 执行程序 将优先于此设置。

· 一点创意, 视频检查 不仅可以用来检查最新版本的
程序或包,还有网站更新等。 此外,该 新的执行 (见
"GRAMMAR") 字段可用于将链接传递到外部下载工具,如果有的话
原因 视频检查的能力证明对于特定场景是不够的。

示例


请务必阅读印刷的内容 视频检查 当运行时

vcheck --帮助 --语法

以及阅读本节之前的“GRAMMAR”,了解命令行参数
和配置文件的语法。 这样做了吗? 然后继续阅读...

假设有一个配置文件 〜/.vcheck 具有以下内容:

配置 = {
dlprefs = \.tar\.bz2$;\.(tar\.|t)gz$;\.zip$
lastcheck = "1999-06-21 08:15"
}

编 Foo = {
dl = 没有
错误 = 2
正则表达式 = foo-(__VER__)\.tar
紧迫性=高
网址= http://www.foo.org/pub/foo/
}
编栏 = {
dlversion = 0.01 测试版
正则表达式 = (?i:bar-(__VER__)\.tar)
网址= http://www.bar.org/bar/index.html
版本 = 0.01
}
前卫巴兹 = {
正则表达式 = baz-(\d+)\.tar
紧迫性=低
网址= ftp://ftp.baz.net/pub/source/
版本 = 123
}

首先,你可以从中推断出什么日期和时间 视频检查 最后一次运行在这个
配置文件。 试图检查 在过去的 2 年中导致了某种错误
尝试,并且由于没有版本字段,因此大概从未被查询过
成功。 永远不会被下载。 期间确定的最新版本
最后一次检查之一是 0.01,但没有下载(0.01beta 是
最后下载)。 最后, 巴兹 从未下载过(根据配置文件,
反正)。 至于一般的下载, *.tar.bz2 优先于 *.tar.gz* .tgz,这
反过来比 *。压缩 文件。 如果没有目标匹配这些中的任何一个
找到不区分大小写的扩展,将不会下载任何内容。

进一步假设以下参考文献目前在各自的
每个程序的网址:

· 为了 :

http://www.foo.org/pub/foo/foo-3.14.tar.gz
http://www.foo.org/pub/foo/foo-3.14.tar.bz2
http://www.foo.org/pub/foo/foo-3.14a.tar.gz
http://www.foo.org/pub/foo/foo-3.14alpha.tar.gz
http://www.foo.org/pub/foo/Foo-4.0.tar.gz

· 为了 :

酒吧-0.01.zip
BAR-0.01.tar.bz2

· 为了 巴兹:

http://www.baz.net/pub/download/baz-124.rpm

现在让我们讨论一些特定的调用 视频检查, 各基于上述
配置,将导致。再次,对于命令行选项的完整列表(所有
短选项具有等效的长选项),请参阅“`vcheck --help`”。

- "$ vcheck -n"
这将检查所有程序而不更新配置文件。 它会报告
3.14 作为新版本(不是 4.0,作为 正则表达式 不匹配),以及 巴兹 124.

- "$ vcheck -d"
这将检查所有程序,报告如上并尝试下载以下内容
文件:

http://www.bar.org/bar/BAR-0.01.tar.bz2

需要注意的是 巴兹 124 不在其中,因为没有符合 首选项
下载 已被明确禁用。 这 错误 现场 已移除
因为检查成功了。

- "$ vcheck -c"
这将设置 版本号 = 版本 巴兹, 不检查可用性
的新版本。 实际上,这将防止将来调用 视频检查 带参数
""-d"" 从下载这些文件。

- "$ vcheck -dc"
这将逐步执行所有未禁用下载的程序
原则和谁 版本号 低于 版本 (即 巴兹 在我们的例子中)。
对于这些, 视频检查 将重新查询相应的站点以确定下载 URL,然后尝试
去下载

http://www.bar.org/bar/BAR-0.01.tar.bz2

如上例所示。

- "$ vcheck -m \!foo"
将检查新版本 巴兹. 请注意,您可能需要引用领先的
感叹号以及在指定的正则表达式中使用的一些字符
命令行,以防止您的 shell 解释它们。

- "$ check -u medium -mb"
只会检查 ,因为它是唯一的程序 至少是 中等
其名称包含一个“b”。

- "$ vcheck -e"
只会检查 ,因为之前检查失败。

附注


· 首先, 视频检查 是不是 完美,它不会在 所有 种情况。 然而我
认为它能够应付其中的大多数,如果确实有一些网站 视频检查
无法确定其下载 URL 或某些版本编号方案
启发式方法令人窒息,您只需要手动处理即可。 但对于大多数
的情况下, 视频检查 应该有助于使您的设置保持最新。

· 不要在非只读模式下使用相同的配置文件运行多个实例,或者
否则一个会导致其他人所做的更改丢失。 视频检查 将防止
这种情况是由使用锁定文件引起的,前提是您的 Perl 设置
支持它。

编辑 配置文件,而 视频检查 正在运行,或者您的更改将是
当脚本重写文件时被覆盖。

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


免费服务器和工作站

下载 Windows 和 Linux 应用程序

Linux 命令

Ad