Учебники

Rexx — системные команды

Одним из самых больших преимуществ в Rexx является возможность создавать повторно используемые сценарии. В настоящее время в организациях часто использование повторно используемых сценариев является значительным преимуществом в экономии времени для выполнения распространенных повторяющихся задач.

Например, технологическим группам в ИТ-организации может понадобиться сценарий, который выполняет обычные повседневные задачи. Эти задачи могут включать взаимодействие с операционными системами. Затем эти сценарии можно запрограммировать на обработку неверных кодов возврата или ошибок.

Rexx предлагает множество системных команд, которые можно использовать для выполнения таких повторяющихся задач. Давайте посмотрим на некоторые системные команды, доступные в Rexx.

реж

Это обычная команда для просмотра каталогов, которая используется в Windows.

Синтаксис

dir

параметры

Никто

Возвращаемое значение

Этот метод возвращает текущий список каталогов в системе.

пример

/* Main program */ 
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.

пример

Live Demo

/* Main program */ 
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.

пример

/* Main program */ 
'sort <sortin.txt> sortout.txt' 

Предположим, что файл sortin.txt содержит следующие данные.

Выход

b 
c 
a

Файл sortout.txt будет содержать следующие данные.

a 
b 
c 

Функция АДРЕС

Этот метод используется для определения среды по умолчанию, используемой для потоков ввода, ошибок и вывода.

Синтаксис

ADDRESS(options) 

параметры

  • Параметры для того, что является адресом определенной системы.

Параметры для того, что является адресом определенной системы.

Возвращаемое значение

Этот метод возвращает имя среды для потоков ввода, ошибок и вывода.

пример

/* Main program */ 
say ADDRESS('I') 
say ADDRESS('O') 
say ADDRESS('E')

Когда мы запустим вышеуказанную программу, мы получим следующий результат.