foreach file ( *.tif )
foreach? cp $file res/$file:r
foreach? echo -n $file
foreach? end
Ora commento pezzo per pezzo:
La sintassi del comando foreach è la seguente:
foreach var ( statement )
Nel caso dell'esempio ho una variabile file, che contiene tutti i file .tif uno per uno all'interno della directory
foreach file ( *.tif )
Questo è quanto appare nella shell una volta dato il comando foreach correttamente
foreach?
Copio cp, il contenuto della variabile $file dentro alla cartella res, con :r tolgo l'estensione
foreach? cp $file res/$file:r
Filename modifiers
$file:h Remove a trailing pathname component, leaving the head.$file:t Remove all leading pathname components, leaving the tail.
$file:e Remove all but the extension.
$file:r Remove a filename extension `.xxx', leaving the root name.
$file:u Uppercase the first lowercase letter.
$file:l Lowercase the first uppercase letter.
$file:s/l/r/ Substitute l for r. l is simply a string like r, not a regular expression.
Per la stampa di quello che ho copiato, modalità verbose in proprio:
foreach? echo -n $file
con -n si toglie l'acapo automatico dall'echo
Per completare il foreach
foreach? end
References
Nessun commento:
Posta un commento