Newsgroup: it.comp.os.linux.development
Titolo: Shell script

Ciao a tutti.
Ho appena scitto il mio primo "shell script" ed avrei bisogno di un
consiglio.
Non so come si fa a fare la modifica dell'estensione di un file, così ho
solamente aggiunto l'estensione che voglio ottenere... Non è una meraviglia,
ma almeno funziona.
In particolare mi serve per la riga del comando ps2pdf... ma sicuramente il
metodo è uno.
Mi potete indirizzare Voi?
#!/bin/sh
LISTAPS=$(ls *.ps)
for file in $LISTAPS; do
if test -f $file; then
ps2pdf13 $file $file".pdf"
mv $file $file".done"
fi
done
Sto cercando di imparare...
Grazie
Giulio


  man rename
M

echo "pippo.txt" | rev | cut -d '.' -f2 | rev
	ottieni: pippo
echo "pippo.txt" | rev | cut -d '.' -f1 | rev
	ottieni: txt
nel tuo ciclo for puoi fare:
NameFile=`echo $file | rev | cut -d '.' -f2 | rev`
ExtFile=`echo $file | rev | cut -d '.' -f1 | rev`
poi vedi tu come usare $NameFile e $ExtFile
Ciao
	(Yatta)MaX


Grazzzzie .-)
è proprio quello che cercavo.
Ora provo.
Giulio

 done
find ./ -t f -iname *.ps -exec ps2pdf13 {} \;
a memoria ma è una traccia...
comunque non hai bisogno di usare rename o quant'altro perchè già
ps2pdf13 
pippo.ps
fa quello che vuoi cambiando l'estensione
occhio a passare a for $LISTAPS in qel modo... se eg. i file
contengono spazzi fai un macello.
Credo si possa arrivare a più alti livelli di perversione con i
caratteri nei nomi di file che non ai semplici spazi.[*]
Usa le "" e se proprio non puoi considera di usare xargs in
circostanze simili.
Se vuoi giocare e puoi usare bash (di sh non ho il man sottomano e non
ricordo) ci sono cose amene tipo:
${parameter:offset}
${parameter:offset:lenght}
...
${parameter#word}
e compagnia che ti saranno senz'altro utili per fare mangling dei
filename.
La soluzione all'abile lettore ;) si vede che je la puoi fare.
[*]
ivan@stige:~/test> touch `echo -e "pippo\a\
rzzz.com
"`
ivan@stige:~/test> ls
pippo??
zzz.com

 La soluzione all'abile lettore ;) si vede che je la puoi fare.
Grazie per l'incoraggiamento :-)
Da cosa si vedrebbe? (Siccome che so' cecato!...)
Ciao
Giulio

 	ottieni: pippo
Perchè reverse?
echo "pippo.txt" | cut -d '.' -f1
:-)
- --
Sergio Pedone
GNU/Linux Slackware
Java
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQFATiypuH+De3vsiOcRAhXoAJ9+klx94bB38Ak3r3mYrJpIbmbJCQCbBpXg
JGrVjxy91aufkGGg9t3i6ww=
=Tuel
-----END PGP SIGNATURE-----

 echo "pippo.txt" | cut -d '.' -f1
Prova con "pippo.pluto.paperino.txt"
$ echo "pippo.pluto.paperino.txt" | cut -d '.' -f1
pippo
$ echo "pippo.pluto.paperino.txt" | rev | cut -d '.' -f2- | rev
pippo.pluto.paperino
Notare il -f2- (e non -f2) nel cut...
Ciao,
-- 
       Roberto Divia`             Love at first sight is one of the greatest
       =============             labour-saving devices the world has ever seen.
Mailbox: C02110                 CERN-European Organization for Nuclear Research
E-mail: 
Robert...@cern.ch
           CH-1211 GENEVE 23, Switzerland

 Notare il -f2- (e non -f2) nel cut...
Bella, tutto chiaro, questa mi mancava.  Grazie dell'intervento.
-- 
Vuoi fare colpo su di lei con me?
Fai colpo su di lei con me! Fai colpo su di lei con me!
[Dr. Gonzo : Paura e delirio a Las Vegas]