Template

Quasi tutti i comandi AmigaDOS possono visualizzare un help relativo
ai propri parametri. Tale help viene stampato sulla finestra della
Shell quando i comandi vengono lanciati da una linea di comando che
termina con un punto interrogativo. Ad esempio:

 RENAME ?

produrrà l'output:

 FROM/A/M,TO=AS/A,QUIET/S:

a questo punto il comando RENAME si pone in attesa di parametri da
parte dell'utente, per poi eseguire l'operazione richiesta. La
stringa che appare a video è appunto il template del comando e indica
esattamente quali parametri il comando accetti e il loro tipo. I due
punti finali non fanno parte del template.

Un utente che non abbia mai usato il comando RENAME, ma che conosce
bene i template AmigaDOS può a questo punto dedurre molte cose su
comando RENAME (che come il nome fa intendere, serve a cambiare nome
ai file): per esempio, che richiede due parametri obbligatori, il
nome del file sorgente e quello destinazione; che, come sorgente, si
può indicare più di un file; che esiste anche un parametro, QUIET, che
può essere omesso e che probabilmente (stando all'esperienza maturata
con altri comandi AmigaDOS) serve a evitare che RENAME stampi a video
informazioni sulle operazioni in corso. Come è evidente, la
conoscenza dei template AmigaDOS è in grado di aiutare notevolmente
nell'uso della Shell.

Vediamo quindi la struttura del template: ogni parametro è separato
dal successivo da un virgola (,), mentre il tipo di parametro è
indicato dal carattere che segue la barra (/). Ogni parametro può
avere un sinonimo che viene indicato dal segno di uguale (=). Nel
caso di RENAME, il segno di uguale indica che si possono usare "AS" e
"TO" indifferentemente.

 TO=AS/A,
 -- -- -
  |  | |
  |  | --- tipo
  |  |
  |  --- sinonimo
 nome 

Il nome del parametro (o quello dell'eventuale sinonimo) funge anche
da "parola chiave" (keyword) che può sempre essere usata con quel
determinato parametro. La keyword deve essere separata dal nome usato
come parametro con uno spazio o con il simbolo di uguale. Ad esempio,
il comando CD ha come template:

 DIR

che indica che richiede un solo parametro: il nome di una directory.
Il comando CD si potrà dunque usare così:

 CD RAM:

oppure così:

 CD DIR RAM:

oppure ancora così:

 CD DIR=RAM:

I parametri AmigaDOS possono comparire in qualsiasi ordine sulla linea
di comando, a patto che venga usata anche la keyword corrispondente,
altrimenti devono apparire nell'ordine indicato dal template stesso.
Prendiamo nuovamente in considerazione il template di RENAME:

 FROM/A/M,TO=AS/A,QUIET/S

il parametro FROM deve di regola apparire prima del parametro TO; ma
tale regola può essere infranta, se si usa la keyword AS o TO:

 RENAME vecchio nuovo

può dunque diventare:

 RENAME AS nuovo vecchio
 RENAME AS nuovo FROM vecchio

Le parole chiave sono anche parole riservate: ciò significa che se un
comando permette il parametro "FROM", quel comando tende sempre a
interpretare la parola "FROM" come keyword. Se "from" è il nome del
file cui vogliamo cambiare nome, il comando:

 RENAME from pippo

non funzionerà come speriamo, ma emetterà il seguente messaggio di
errore:

 manca un parametro obbligatorio

Infatti, la parola "from" viene interpretata come keyword e la linea
di comando citata corrisponde esattamente a:

 RENAME pippo

in cui è evidente la mancanza di un parametro obbligatorio: il nome
del file destinazione.

Ricordiamo anche che i nomi dei file AmigaDOS possono contenere degli
spazi, a patto che vengano racchiusi tra virgolette doppie:

 RENAME "vecchio 1" "nuovo 1"

Elenchiamo ora i tipi di parametri disponibili, ricordando tra
parentesi il nome inglese cui fa riferimento il carattere usato
assieme alla barra. Ogni parametro può avere più di un tipo.

/A

Il parametro è obbligatorio e non può essere omesso (A sta per ALWAYS,
sempre).

/K

Se si usa il parametro, la keyword è obbligatoria e non può essere
omessa (K sta per KEYWORD, parola chiave).

/M

Il parametro può essere composto da più nomi (M sta per MULTIPLE,
multiplo).

/S

Il parametro è costituito dalla keyword stessa e non deve essere
seguito da un nome (S sta per SWITCH, interruttore).

/N

Il parametro deve essere un numero (N sta per NUMERIC, numerico).

/F

Il parametro deve apparire alla fine della linea di comando e può
essere costituito da più nomi (F sta per FINAL, finale).

Vediamo ora alcuni casi.

 FROM/A/M

 Il parametro è obbligatorio (/A); può essere costituito da più nomi
(/M); la kewyord FROM è opzionale (manca infatti /K).

Esempi:

 comando vecchio
 comando FROM vecchio
 comando vecchio1 vecchio2

 BUF=BUFFER/K/N

Il parametro è opzionale (manca infatti /A); per usarlo è necessario
indicare la keyword BUF o BUFFER (/K), il nome deve essere un numero
(/N).

Esempi:

 comando
 comando BUF 30
 comando BUF=30
 comando BUFFER 30

 QUIET/S

Il parametro è opzionale; per usarlo basta indicare QUIET.

Esempi:

 comando
 comando QUIET