Rexx - Comandi di sistema
Uno dei maggiori vantaggi di Rexx è la possibilità di creare script riutilizzabili. Spesso nelle organizzazioni al giorno d'oggi, avere script riutilizzabili è un grande valore aggiunto per risparmiare tempo per svolgere attività ripetitive comuni.
Ad esempio, i team tecnologici in un'organizzazione IT possono avere la necessità di disporre di script che eseguano attività quotidiane comuni. Queste attività possono includere l'interazione con i sistemi operativi. Questi script possono quindi essere programmati per gestire errori o codici di ritorno non validi.
Rexx offre molti comandi di sistema che possono essere utilizzati per eseguire tali attività ripetitive. Diamo un'occhiata ad alcuni dei comandi di sistema disponibili in Rexx.
dir
Questo è il normale comando di elenco delle directory utilizzato in Windows.
Sintassi
dir
Parametri
Nessuna
Valore di ritorno
Questo metodo restituisce l'elenco di directory corrente sul sistema.
Esempio
/* Main program */
dir
L'output dipende dalla directory nel sistema.
Il seguente programma è solo un esempio.
Produzione
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
Un altro esempio di dir commandè mostrato nel seguente programma. Solo che questa volta utilizziamo il filespecial rc variable. Questa variabile è speciale in Rexx e fornisce lo stato di esecuzione dei comandi di sistema. Se il valore restituito è 0, significa che il comando è stato eseguito correttamente. Altrimenti il numero di errore verrà fornito nel nome della variabile rc.
Esempio
/* Main program */
dir
if rc = 0 then
say 'The command executed successfully'
else
say 'The command failed, The error code is =' rc
Quando eseguiamo il programma sopra, otterremo il seguente risultato.
Produzione
The command failed, The error code is = 127
Comandi di reindirizzamento
Rexx ha anche la possibilità di utilizzare i comandi di reindirizzamento. I seguenti comandi di reindirizzamento sono disponibili in Rexx.
< - Questo comando viene utilizzato per ricevere l'input che proviene da un file.
>- Questo comando viene utilizzato per produrre il contenuto in un file. Se il file esiste, verrà sovrascritto.
>>- Viene anche utilizzato per l'output del contenuto in un file. Ma l'output viene aggiunto alla fine del file per preservare il contenuto esistente del file.
Diamo un'occhiata a un esempio di come possiamo usare i comandi di reindirizzamento. Nell'esempio seguente, stiamo usando il comando sort per ordinare un file chiamatosortin.txt. I dati del file vengono inviati al comando di ordinamento. L'output del comando di ordinamento viene quindi inviato al file sortout.txt.
Esempio
/* Main program */
'sort <sortin.txt> sortout.txt'
Supponiamo che il file sortin.txt contenga i seguenti dati.
Produzione
b
c
a
Il file sortout.txt avrà quindi i seguenti dati.
a
b
c
La funzione ADDRESS
Questo metodo viene utilizzato per scoprire qual è l'ambiente predefinito utilizzato per i flussi di input, errore e output.
Sintassi
ADDRESS(options)
Parametri
Opzioni per qual è l'indirizzo di un particolare sistema.
Valore di ritorno
Questo metodo restituisce il nome dell'ambiente per i flussi di input, errore e output.
Esempio
/* Main program */
say ADDRESS('I')
say ADDRESS('O')
say ADDRESS('E')
Quando eseguiamo il programma sopra, otterremo il seguente risultato.
Produzione
INPUT NORMAL
REPLACE NORMAL
REPLACE NORMAL