英语法语西班牙语

Ad


OnWorks 网站图标

aenf - 云端在线

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

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

程序:

您的姓名


aegis 新文件 - 添加要通过更改创建的新文件

概要


庇护 -新文件 文档名称... [ 选项...]
庇护 -新文件 -列表 [ 选项...]
庇护 -新文件 -帮助

商品描述


庇护 -新文件 命令用于将新文件添加到更改中。 命名的文件将
被添加到更改中的文件列表中。

对于命名的每个文件,在开发目录中创建一个新文件,如果没有
已经存在。 如果文件已经存在,则不会更改。

如果您希望新的源文件可执行(例如,shell 脚本),那么您
只需使用正常 CHMOD(1) 命令。 如果文件的任何可执行位设置为
伊蚊(1) 文件被记住为可执行和所有执行位(减去
项目的 umask) 将由后续设置 欧共体(1) 命令。

如果在命令行中命名目录,将搜索整个目录树
对于新文件。 (注意:绝对会添加所有内容,包括点文件和
二进制文件,因此您需要先清除所有垃圾。)此名称下的文件
已在更改或项目中的目录将被忽略。 这
文件名_接受文件名_拒绝 项目中的模式 配置文件 文件也会
应用,见 配置文件(5) 了解更多信息。

目录 例如:
有时,诸如
$ 恩夫 富巴/*
aegis:项目“示例”:更改 42:“fubar/glorp”已经在更改
aegis:项目“示例”:更改 42:发现 1 个致命错误,未添加新文件
$
将失败,如图所示。 有几种方法可以解决这个问题,最简单的方法是
简单地命名目录:
$ 恩夫 富巴
aegis:项目“示例”:更改 42:添加文件“fubar/smiley”
aegis:项目“示例”:更改 42:添加文件“fubar/frownie”
$
你也可以使用 发现(1) 任意复杂文件选择的命令,但你
必须首先排除上述命令自动排除的文件:
$ 艾尔克夫 > 排除
$ 埃尔普夫 >> 排除
$ 发现 富巴 -类型 f | \
grep的 -v -f 排除 | \
参数 庇护 - 新文件 -v
aegis:项目“示例”:更改 42:添加文件“fubar/smiley”
aegis:项目“示例”:更改 42:添加文件“fubar/frownie”
$
如果您不使用排除列表,则 发现(1) 命令将需要为您进行微调
开发目录样式。 如果您使用的是符号链接样式,则需要添加
发现 -nlink 1 选项之外 发现 -类型 f 选项。
$ 发现 富巴 -类型 f -n链接 1 | \
参数 庇护 - 新文件 -v
aegis:项目“示例”:更改 42:添加文件“fubar/smiley”
aegis:项目“示例”:更改 42:添加文件“fubar/frownie”
$
如果您使用的是完整副本开发目录样式,则必须使用
排除列表方法,如上。

文件 模板
在开发目录中创建新文件时 配置 文件是
搜索新文件的模板。 如果找到模板,新文件将是
初始化为模板,否则将创建为空。 看 配置文件(5) 更多
信息。

最简单的形式就是使用模板文件,比如
文件模板 =
[
{
模式 = [“*.c”];
body = "${read_file ${source template/c abs}}";
},
{
模式= [“测试/*/.sh”];
body = "${read_file ${source template/test abs}}";
},
];
如您所见,模板文件是项目源的一部分,因此您可以添加
适当的版权声明和包装, 。 该 $源 替换定位它们,
如果它们不是当前更改的一部分(通常不是)。

模板文件本身包含替换。 这 $文件名 替代是
可用,并包含正在创建的文件的名称。 这可以在
构建适当的文件内容时的各种方法。 看 亚瑟(5) 更多
有关替换的信息。

也可以运行命令来创建新文件。 你可以这样做而不是
指定正文字符串, 即:
文件模板 =
[
{
模式 = [ "*" ];
body_command = "perl ${source template.pl abs} $filename";
},
];
该命令运行时将当前目录设置为开发目录的顶部。
如果该命令无法创建文件,则会出现错误。 您可以将两者混合搭配
技术, 身体 字符串和 身体命令, 如果你想。

文件 名字 限制
有许多控件可用于限制项目文件名的形式。 所有的
这些控件可以在项目配置文件中找到,请参见 配置文件(5) 更多
信息。 最重要的在这里简要描述:

最大文件名长度 = 整数;
此字段用于限制文件名的长度。 所有新文件可能没有
路径组件比这更长。 如果未设置,则默认为 255。 最大
可移植性,您应该将其设置为 14。

posix_filename_charset = 布尔值;
此字段可用于将文件名中允许的字符限制为仅那些
POSIX 明确允许。 默认为 false 如果未设置,则意味着无论您
操作系统将容忍,除了空格和高位字符。
为了获得最大的便携性,您应该将其设置为 true.

dos_filename_required = 布尔值;
此字段可用于限制文件名,使其符合 DOS 8+3
文件名限制和 DOS 文件名字符集。 默认为 false 如果不
设置。

windows_filename_required = 布尔值;
此字段可用于限制文件名,使其符合 Windows98
和 WindowsNT 文件名限制和字符集。 默认为 false 如果没有设置。

shell_safe_filenames = 布尔值;
此字段可用于限制文件名,使其不包含 shell
特殊的角色。 默认为 true 如果没有设置。 如果此字段设置为 false,
您将需要使用 ${报价} 在命令中替换文件名,以
确保包含 shell 特殊字符的文件名没有意外
副作用。 文件名中的奇怪字符也可能会混淆您的依赖项
维护工具。

allow_white_space_in_filenames = 布尔值;
此字段可用于允许文件名中包含空格字符。 这会
允许以下字符出现在文件名中:退格(BS,\b,0x08),
水平制表符 (HT, \t, 0x09), 换行符 (NL, \n, 0x0A), 垂直制表符 (VT, \v,
0x0B)、换页(FF、\f、0x0C)和回车(CR、\r、0x0D)。 默认为
如果未设置,则为 false。

请注意,此字段不会覆盖其他文件名过滤器。 这将是
需要明确设置 shell_safe_文件名 = false 以及。 这将是
必须设置 dos_文件名_必需 = false (默认)也是如此。 这将是
必须设置 posix_文件名_字符集 = false (默认)也是如此。

用户必须非常小心地在所有文件周围使用 ${quote} 替换
项目配置中命令中的名称。 即便如此,换人
期望以空格分隔的文件名列表将具有未定义的结果。

allow_non_ascii_filenames = 布尔值;
此字段可用于允许文件名中包含非 ascii 可打印字符
他们。 通常这意味着某种 UTF8 或国际字符集。
如果未设置,则默认为 false。

请注意,此字段不会覆盖其他文件名过滤器。 这将是
需要明确设置 shell_safe_文件名 = false 以及。 这将是
必须设置 dos_文件名_必需 = false (默认)也是如此。 这将是
必须设置 posix_文件名_字符集 = false (默认)也是如此。

filename_pattern_accept = [字符串];
此字段用于指定可接受文件名的模式列表。
如果未设置,则默认为“*”。

filename_pattern_reject = [字符串];
此字段用于指定不可接受的文件名模式列表。

请注意: Aegis 还咨询底层文件系统,以确定其概念
最大文件大小。 文件系统的最大文件大小小于
最大文件名长度,文件系统获胜。 这可能会发生,例如,当您
使用 Linux UMSDOS 文件系统,或者当你安装了一个 NFS 时,一个古老的 V7
文件系统。 环境 最大文件名长度 在这些情况下到 255 不会改变
事实上,底层文件系统的限制要小得多(分别为 12 和 14)。

如果您的开发目录(或您的整个项目)位于具有 filename 的文件系统上
限制,或者部分异构构建发生在这样的环境中,
它有助于告诉 Aegis 它们是什么(使用项目 配置 文件的字段),以便您
不要遇到项目建立在更宽容的基础上的情况
环境,但在更有限的环境中失败并出现神秘错误。

如果您的开发目录通常位于 Linux UMSDOS 文件系统上,您将
可能更好设置 dos_文件名_必需 = true,并且还改变了
开发目录模板 场地。 各种Windows的异构开发
环境也可能需要这样做。

文件 名字 解释
aegis 程序将尝试从文件名中确定项目文件名
在命令行中给出。 所有文件名都作为相对文件名存储在 aegis 项目中
到基线目录树的根。 开发目录和
集成目录是这个基线目录的影子,所以这些相对名称
也在这里申请。 命令行中命名的文件首先转换为绝对路径
如有必要。 然后将它们与基线路径、开发目录进行比较
path 和集成目录路径,以确定相对于基线的名称。 这是
如果命名的文件在这些目录树之一之外,则会出现错误。

-BASE_Relative 选项可用于将相对文件名解释为
相对于基线路径; 绝对文件名仍将与各种
路径以确定基线相对名称。

相对文件名首选项 在用户配置文件中可以用来修改
这种默认行为。 看 配置文件(5) 了解更多信息。

改变 Type of a 文件
如果你想改变一个文件的类型(比如,从一个测试到一个源文件,或者
反之亦然) 你可以把它作为两个变化来做,首先使用 艾尔姆(1) 一改再改
运用 恩夫(1)或 对象(1) 在第二次更改中,或者您可以将两个步骤合并在同一个
改变。 记得使用 艾尔姆 -现在不白了 选项,否则你会得到一个最奇特的新
文件模板。

文件 操作 调整
当此命令运行时,它首先根据项目文件检查更改文件。 如果
有不一致的地方,文件动作会做如下调整:

create 如果正在创建一个文件,但集成了另一个更改集,它也
创建文件,仍在开发的更改集中的文件操作将是
调整为“修改”。

修改 如果正在修改文件,但集成了另一个更改集,该更改集将删除
文件,仍在开发的更改集中的文件操作将是
调整为“创造”。

remove 如果正在删除一个文件,但集成了另一个更改集,该更改集将删除
文件,该文件将从仍在开发的更改集中删除。

通知
新建文件命令 在项目配置文件中运行,如果设置。 这 项目_-
文件命令 也会运行,如果设置了,并且最近有集成。 看
配置文件(5) 了解更多信息。

测试 相关性


“aegis -Test -SUGgest”命令可用于让 aegis 建议合适的回归
根据更改中的源文件对更改进行测试。 这自动
将测试工作集中在相关测试上,减少回归测试的数量
有必要确信您没有引入错误。

测试相关性由“aegis -Integrate_Pass”命令生成,该命令
将变更中的每个测试与变更中的每个源文件相关联。 因此,每个
源文件累积了过去与其关联的测试列表。
这不像代码覆盖率分析那么精确,但在以下情况下是一个合理的近似值
实践。

欧共体(1)和 恩夫(1) 命令用于将文件与更改相关联。 虽然他们
不主动执行关联,这些是使用的文件 通行证(1)和
AET(1) 确定哪些源文件与哪些测试相关联。

测试 相关 准确性
假设测试相关性是准确的并且测试是均匀的
分布在整个功能空间中,将有一个小于 1/号 一个机会
“aegis -Test -SUGgest”尚未运行相关测试 “ 命令。 一个小的
噪声量被添加到测试权重中,因此有时会出现意想不到的事情
经过测试,并且不会每次都运行相同的测试。

通过确保:

· 每次更改都应重点关注,不得包含无偿的文件。 这个
避免虚假的相关性。

· 每一项新功能都应该在单独的更改中添加,而不是
几个在一起。 这将测试与功能密切相关。

· 每个错误都应该在单独的更改中修复,而不是几个一起更改。 这个
将测试与功能强相关。

· 如果移动文件,测试相关性将丢失。 这是因为相关性是由
名称。

测试与源文件准确关联的最佳方式是
包含一个测试以及与被测功能相关的那些文件。 也
许多虚假文件会削弱测试相关性的有用性。

配置


理解以下选项

-建造
此选项可用于指定文件是在构建期间构建的
(通常只是一个集成构建),以便可以保留它的历史。 这是
用于生成补丁文件,其中生成文件的历史记录是
重要的。 以这种方式创建的文件可能不会被复制到更改中,但是
它们可能会被删除。 如果可能,请避免使用这种类型的文件。

-BASE_Relative
此选项可用于导致相对文件名被视为相对于
源树的基础。 看 配置文件(5) 对应用户
偏好。

-CUrrent_Relative
此选项可用于导致相对文件名被视为相对于
当前目录。 这通常是默认设置。 看 配置文件(5)
相应的用户偏好。

-改变
此选项可用于指定项目中的特定更改。 看
庇护(1) 有关此选项的完整说明。

-已配置
此选项可用于指定文件是 Aegis 项目
配置文件。 默认的项目配置文件叫做 配置文件,
但是可以使用任何文件名。 您也可以使用多个文件,
将内容拆分到多个文件中,所有文件都必须属于这种类型。

-帮助
此选项可用于获取有关如何使用 庇护
程序。

-保持
此选项可用于保留通常已删除或
由命令代替。 默认为用户的 删除文件首选项 如果不
指定,见 配置文件(5) 了解更多信息。

-No_Keep
此选项可用于确保删除文件和/或目录
或由命令代替。 默认为用户的 删除文件首选项 如果不
指定,见 配置文件(5) 了解更多信息。

-列表
此选项可用于获取此命令的合适主题列表。
该列表可能比预期的更笼统。

-Not_Logging
此选项可用于禁用输出和错误的自动记录到
一份文件。 当多个 aegis 命令组合在一个 shell 中时,这通常很有用
脚本。

-项目 姓名
此选项可用于选择感兴趣的项目。 当没有 -项目
选项被指定, 宙斯盾项目 环境变量被咨询。 如果
不存在的,用户的 $HOME/.aegisrc 检查默认文件
项目字段(见 配置文件(5) 了解更多信息)。 如果那不存在,
当用户只在单个项目中进行更改时,项目
名称默认为该项目。 否则,这是一个错误。

-模板
此选项可用于指定应使用新文件模板,即使
如果文件已经存在。

-No_TEMplate
此选项可用于指定不应使用新文件模板,
即使文件不存在(将创建任何空文件)。

-TERse
此选项可用于使列表产生最少的
信息。 它通常对 shell 脚本很有用。

-详细
此选项可用于使 aegis 产生更多输出。 默认情况下
只产生错误的输出。 当与 -列表 选项这个选项
导致添加列标题。

-等待 此选项可用于要求 Aegis 命令等待访问锁定,如果
它们不能立即获得。 默认为用户的 锁等待偏好
如果未指定,请参阅 配置文件(5) 了解更多信息。

-No_Wait
此选项可用于要求 Aegis 命令在访问时发出致命错误
不能立即获得锁。 默认为用户的
锁等待偏好 如果未指定,请参阅 配置文件(5) 了解更多信息。

参见 庇护(1) 对于所有 aegis 命令通用的选项。

所有选项都可以缩写; 缩写记录为大写字母,
所有小写​​字母和下划线 (_) 都是可选的。 您必须使用连续
可选字母的序列。

所有选项都不区分大小写,您可以将它们输入为大写或小写或
两者结合,大小写并不重要。

例如:参数“-project”、“-PROJ”和“-p”都被解释为表示
-项目 选项。 参数“-prj”不会被理解,因为连续
未提供可选字符。

选项和其他命令行参数可以在命令行上任意混合,
在功能选择器之后。

GNU 长选项名称是可以理解的。 由于所有选项名称为 庇护 很长,
这意味着忽略额外的前导“-”。 这 ”--选项=折扣值"约定也是
明白了。

推荐 别名


此命令的推荐别名是
csh% 别名 aenf 'aegis -nf \!* -v'
sh$ aenf(){aegis -nf "$@" -v}

错误


如果更改不在 作为 发达 州。
如果未将更改分配给当前用户,则会出现错误。
如果文件已经是更改的一部分,则这是一个错误。
如果文件已经是基线的一部分,则这是一个错误。
如果命令行中命名的文件不是普通文件,则是错误的
目录。 (如果您需要符号链接或特殊文件,请在构建时创建它们。)

退出 状态


庇护 命令将在出现任何错误时以 1 状态退出。 这 庇护 命令只会
如果没有错误,则退出状态为 0。

环境 变数


我们 庇护(1) 获取可能影响此命令的环境变量列表。 看
配置文件(5)为项目配置文件的 项目特定 字段如何设置
Aegis 执行的所有命令的环境变量。

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


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    移相器
    移相器
    Phaser 是一个快速、免费且有趣的开放式
    源 HTML5 游戏框架,提供
    WebGL 和 Canvas 渲染
    桌面和移动网络浏览器。 游戏
    可以共...
    下载移相器
  • 2
    附庸引擎
    附庸引擎
    VASSAL 是一个游戏引擎,用于创建
    电子版传统板
    和纸牌游戏。 它提供支持
    游戏块渲染和交互,
    和...
    下载 VASSAL 引擎
  • 3
    OpenPDF - iText 的分支
    OpenPDF - iText 的分支
    OpenPDF 是一个 Java 库,用于创建
    以及使用 LGPL 编辑 PDF 文件和
    MPL 开源许可证。 OpenPDF 是
    iText 的 LGPL/MPL 开源继承者,
    一个...
    下载 OpenPDF - iText 的分支
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - 自动化系统
    地球科学分析 - 是地理
    信息系统 (GIS) 软件
    地理数据的强大功能
    加工和分析...
    下载 SAGA GIS
  • 5
    Java/JTOpen 工具箱
    Java/JTOpen 工具箱
    IBM Toolbox for Java / JTOpen 是一个
    Java类库支持
    客户端/服务器和互联网编程
    模型到运行 OS/400 的系统,
    i5/OS, 哦...
    下载 Java/JTOpen 工具箱
  • 6
    D3.js
    D3.js
    D3.js(或数据驱动文档的 D3)
    是一个 JavaScript 库,它允许你
    生成动态的交互式数据
    Web 浏览器中的可视化。 与D3
    您...
    下载 D3.js
  • 更多 ”

Linux 命令

Ad