ciao . ho gia avuto un problema con bash e qualcuno del forum mi ha aiutato a risolverlo. questo però rasenta il ridicolo
voglio per semplificarmi la vita ciclare in un for usando un valore di una variabile
dato dall output di un comando
#!/bin/bash
#cerco tutti i file con estensione .txt e .png nella home e nelle sottodir
cd /home/user/
res=`find . -name "*.txt" -or -name "*.png"`
dest=/home/user/Desktop/fileTrovati/
cd Desktop
mkdir "fileTrovati"
for i in $res #qui è il problema !
do
echo "$i"
if (test -f "$i")
then
echo "file iesimo trovato \n"
cp $i $dest
fi
done
cd fileTrovati
for k in *
do
echo "$k"
done
se utilizzo l output del comando nel for invece che la variabile ,
for in `find . -name "*.txt" -or -name "*.png"`
do
..
nessun problema . tutto funziona perfettamente. altrimenti lo script non funziona.
ho gia fatto ricerche nel web prima di postare , ma nulla
addirittura
http://fabriziocelli.altervista.org/guide/linbash.html
mi dice che è tutto ok
dove sbaglio?
grazie

Rispondi quotando
dei suggerimenti elencati lì, ti consiglio di usare quello con -print0 (in modo da essere sicuro che il tuo codice funzioni anche con i nomi file più assurdi).
