|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Rimini
Messaggi: 3970
|
[HELP] Script in BASH, perchè non funziona ?
Un mio amico mi ha scritto questo piccolo script che dovrebbe leggere dentro ad un file di testo il contenuto di una riga e rinominare un file sequenziale con questo testo....
#!/bin/bash directory=$1 infile=$2 count=1 for i in $( ls $directory ); do src=$directory/$i tgt=$directory/$(sed $(($count))!d $infile) echo $tgt count=$(($count+1)) mv $src $tgt done Quando lo lancio però mi da questo errore : server:/@Bakcup# ./mmv prova infile.txt prova/01 - ita - ciao ciao.mpg mv: when moving multiple files, last argument must be a directory Try `mv --help' for more information. prova/02 - ita - aafasdf.mpg mv: when moving multiple files, last argument must be a directory Try `mv --help' for more information. Qlc sa dirmi il perchè ?
__________________
Powered by Apple Macbook Pro Retina Ultima modifica di The X : 15-11-2003 alle 20:24. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
|
Re: [HELP] Script in BASH, perchè non funziona ?
quando il nome di un file contiene degli spazi devi racchiuderlo tra virgolette. per cui
Quote:
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella” |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Rimini
Messaggi: 3970
|
Grazie mille Guru ora funziona ^_^
Adesso nn vorrei chiedere troppo MA sapresti dirmi come poter modificare questo script affinkè t avverta se dimentichi d inserire il nome della directory o il nome del file (ovvero se nn trova il file o directory) Sarebbe una cosa tipo "if ecc ecc then ecc ecc else" giusto ? ^_^
__________________
Powered by Apple Macbook Pro Retina |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
|
Codice:
#!/bin/bash
directory="$1"
infile="$2"
count=1
if (test -z "$directory" || test -z "$infile" || \
test ! -d "$directory || test ! -f "$infile"); then {
echo "Parametri non corretti"
exit 1
}
fi
for i in $( ls "$directory" );
do
src="$directory/$i"
tgt="$directory/$(sed $(($count))!d $infile)"
echo "$tgt"
count=$(($count+1))
mv "$src" "$tgt"
done
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella” |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Rimini
Messaggi: 3970
|
6 il mio DIO ^_^
GRAZIE MILLE !!!! Ora mi funziona tutto
__________________
Powered by Apple Macbook Pro Retina |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:40.


















