PDA

Visualizza la versione completa : Costrutto IF e espressioni regolari


trillullero
19-02-2005, 22:19
vorrei controllare la presenza di un file in diverse directory usando una sintassi del tipo:

if [ -e [/bin/,/usr/bin/]file ]; then
#code
fi

per l' espressione regolare fra parentesi quadre non viene espansa.
E' possibile usare quel tipo di sintassi all' interno del costrutto if?

Fatur
20-02-2005, 11:09
prova con le graffe, mi pare vada

if [ -e {/bin/,/usr/bin/}file ]; then
#code
fi

trillullero
20-02-2005, 19:13
Con le graffe non funziona ma ho visto su uno script una sintassi del tipo

for variabile in

/bin \
/usr/bin \
do
#codice
done

Devo dare delle prove.

Ciao!

Fatur
21-02-2005, 10:41
Ho provto solo con un ls da shell e andava, si vede che non espende le graffe dentro il test :bh:

cmq puoi creare una variabile con gli spazi e fare una cosa tipo quella che dici tu con una variabile stringa con gli spazi, una cosa del tipo

#!/bin/sh

D="a b c /bin/"

for i in $D
do
echo $i
done

questo l'ho provato :)

Loading