Rexx - 系统命令
Rexx 的最大优势之一是能够创建可重复使用的脚本。 在当今的组织中,拥有可重用的脚本通常可以节省执行常见重复任务的时间,从而带来巨大的附加值。
例如,IT 组织中的技术团队可能需要拥有执行常见日常任务的脚本。 这些任务可以包括与操作系统交互。 然后可以对这些脚本进行编程来处理错误的返回代码或错误。
Rexx 提供了许多可用于执行此类重复任务的系统命令。 让我们看一下 Rexx 中可用的一些系统命令。
dir
这是 Windows 中使用的普通目录列表命令。
语法
dir
参数
None
返回值
此方法返回系统上的当前目录列表。
示例
/* 主程序 */ dir
输出取决于系统中的目录。
以下程序只是一个示例。
输出
Volume in drive D is LENOVO Volume Serial Number is BAC9-9E3F Directory of D:\ 04/06/2016 12:52 AM 268,205 100008676689.pdf 10/20/2015 08:51 PM <DIR> data 06/01/2016 10:23 AM 31 Example.txt 10/28/2014 06:55 PM <DIR> Intel 06/02/2016 11:15 AM 23 main.rexx 12/22/2014 08:49 AM <DIR> PerfLogs 12/13/2015 11:45 PM <DIR> Program Files 12/24/2015 10:26 AM <DIR> Program Files (x86) 07/17/2015 01:21 AM <DIR> Users 12/23/2015 10:01 AM <DIR> Windows 3 File(s) 268,259 bytes 7 Dir(s) 202,567,680 bytes free
下面的程序显示了dir 命令的另一个示例。 只是这一次我们使用了特殊的 rc 变量。 该变量在 Rexx 中很特殊,它为您提供系统命令的执行状态。 如果返回值为0,则表示命令执行成功。 否则,错误号将在 rc 变量名称中给出。
示例
/* 主程序 */ dir if rc = 0 then say 'The command executed successfully' else say 'The command failed, The error code is =' rc
当我们运行上面的程序时,我们将得到以下结果。
输出
The command failed, The error code is = 127
重定向命令
Rexx 还具有使用重定向命令的功能。 Rexx 中提供以下重定向命令。
< − 该命令用于接收来自文件的输入。
> − 该命令用于将内容输出到文件中。 如果文件确实存在,它将被覆盖。
>> − 这也用于将内容输出到文件。 但输出会添加到文件末尾以保留文件的现有内容。
让我们看一个如何使用重定向命令的示例。 在下面的示例中,我们使用 sort 命令对名为 sortin.txt 的文件进行排序。 文件中的数据被发送到排序命令。 然后,排序命令的输出将发送到 sortout.txt 文件。
示例
/* 主程序 */ 'sort <sortin.txt> sortout.txt'
假设文件 sortin.txt 具有以下数据。
输出
b c a
文件sortout.txt将包含以下数据。
a b c
ADDRESS 函数
此方法用于找出输入、错误和输出流使用的默认环境。
语法
ADDRESS(options)
参数
特定系统地址的选项。
返回值
此方法返回输入、错误和输出流的环境名称。
示例
/* 主程序 */ say ADDRESS('I') say ADDRESS('O') say ADDRESS('E')
当我们运行上面的程序时,我们将得到以下结果。
输出
INPUT NORMAL REPLACE NORMAL REPLACE NORMAL