Ho bisogno di creare un file vuoto usando uno script di shell. Il nome del file verrà determinato esaminando tutti i file in una directory che corrispondono a un modello, ad esempio TEST.*
e aggiungendo _END
in modo che il nuovo file assomigli a TEST.2011_END
. Lascia che la directory corrente sia $DIR
. Quindi ho provato:
for file in $DIR/TEST.*
do
touch $file_END
done
Questo dà un errore. Ho anche provato a sostituire touch $file_END
con:
filename=$file_END
touch $filename
ma senza fortuna. Cosa devo fare?
Risposta accettata:
La sintassi sarebbe:
filename="${file}_END"
o nel tuo codice
touch "${file}_END"
Il "
le virgolette non sono necessarie finché $file
non contiene spazi bianchi o caratteri glob.