3 581
contributi
(ampliate sezioni con più esempi) |
m ("do" su una nuova riga (uniformazione alla sintassi usata altrove)) |
||
Riga 85: | Riga 85: | ||
L'esistenza di file ottenuti da tali espansioni va pertanto sempre controllata, impiegando l'espansione per generare una lista di stringhe all'interno di un ciclo <code>for</code>, ed effettuando poi il controllo di esistenza su ognuna: | L'esistenza di file ottenuti da tali espansioni va pertanto sempre controllata, impiegando l'espansione per generare una lista di stringhe all'interno di un ciclo <code>for</code>, ed effettuando poi il controllo di esistenza su ognuna: | ||
<pre>for file in ./* | <pre> | ||
for file in ./* | |||
do | |||
if [ -e "$file" ]; then | if [ -e "$file" ]; then | ||
... | ... | ||
Riga 131: | Riga 133: | ||
<pre> | <pre> | ||
shopt -s dotglob nullglob | shopt -s dotglob nullglob | ||
for file in ./* | for file in ./* | ||
do | |||
... | ... | ||
done | done | ||
Riga 142: | Riga 145: | ||
<pre> | <pre> | ||
for f in ./*.txt | for f in ./*.txt | ||
do | |||
if [ -f "$f" ]; then | if [ -f "$f" ]; then | ||
mv -- "$f" "${f%txt}log" | mv -- "$f" "${f%txt}log" | ||
Riga 180: | Riga 184: | ||
Questa espansione è effettuata prima di tutte le altre, e il risultato dell'espansione se non quotato può quindi subire ulteriori espansioni. Per esempio per effettuare un'operazione sui file nella cartella corrente che hanno una data estensione, si può scrivere: | Questa espansione è effettuata prima di tutte le altre, e il risultato dell'espansione se non quotato può quindi subire ulteriori espansioni. Per esempio per effettuare un'operazione sui file nella cartella corrente che hanno una data estensione, si può scrivere: | ||
<pre> | <pre> | ||
for file in ./*.{odt,abw,txt,rtf,doc} | for file in ./*.{odt,abw,txt,rtf,doc} | ||
do | |||
if [ -e "$file" ]; then | if [ -e "$file" ]; then | ||
... | ... | ||
Riga 188: | Riga 193: | ||
e la prima riga è equivalente a: | e la prima riga è equivalente a: | ||
<pre> | <pre> | ||
for file in ./*.odt ./*.abw ./*.txt ./*.rtf ./*.doc | for file in ./*.odt ./*.abw ./*.txt ./*.rtf ./*.doc | ||
</pre> | </pre> | ||
contributi