|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Problemino con script.........
Secondo voi, su questo script:
#!/bin/bash set -x umask 0000 WORKDIR=/distiller LOGFILE=/distiller/log/file.log cd $WORKDIR for i in $(ls $WORKDIR) do if 'file $i | grep PostScript > /dev/null' then date +%x-%X >> $LOGFILE file $i >> $LOGFILE ps2pdf $i $i.pdf >> $LOGFILE rm -vf $i echo >> $LOGFILE fi done Cos'è che gli fa generare questo errore: ./f2pdf: line 19: syntax error near unexpected token `fi' ./f2pdf: line 19: ` fi' Ho provato a girarlo in tutte le salse, ma nella migliore delle ipotesi, quindi spostando fi subito dopo echo >> $LOGFILE, mi da un'errore di unexpected 'done' Boooooooooooh!!!!! Grazie. Ciao. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Aug 2002
Messaggi: 1909
|
Re: Problemino con script.........
Quote:
#!/bin/bash set -x umask 0000 WORKDIR=/distiller LOGFILE=/distiller/log/file.log cd $WORKDIR for i in $(ls $WORKDIR) do if 'file $i | grep PostScript > /dev/null'; then date +%x-%X >> $LOGFILE file $i >> $LOGFILE ps2pdf $i $i.pdf >> $LOGFILE rm -vf $i echo >> $LOGFILE fi done manca un ; prima del then
__________________
AMD Athlon64X2 4400+@2700Mhz - Asus A8N32-SLI - 1GBddr400 - Dell Inspiron 6000 all powered by Gentoo-Linux Eight days of the week we're dead on our feet, take me aside just shoot me. No black and white, black and white. Wish we could drive right through you. - Eight Days - PitchShifter |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2002
Città: Morbegno (SO)
Messaggi: 1410
|
tolgi gli '' dall'if e mettici un ; prima del then
cmq non e il massimo tipo nel for puoi togliere il $( ma metterci for i in WORKDIR/*ps do cmq un paio di prove Codice:
-<mason@aries:/dev/pts/0>--<1835:mar,09 mar 04>-------------------</home/mason>- -<Yes, Master?>-$/tmp/prova.sh pcrbo-o.ps pcrb-o.ps pcrro-o.ps pcrr-o.ps -<mason@aries:/dev/pts/0>--<1835:mar,09 mar 04>-------------------</home/mason>- -<Yes, Master?>-$ls /tmp/*ps /tmp/pcrbo-o.ps /tmp/pcrb-o.ps /tmp/pcrro-o.ps /tmp/pcrr-o.ps -<mason@aries:/dev/pts/0>--<1837:mar,09 mar 04>-------------------</home/mason>- -<Yes, Master?>-$cat /tmp/prova.sh #!/bin/bash umask 0000 WORKDIR=/tmp LOGFILE=/tmp/log/file.log cd $WORKDIR for i in $(ls $WORKDIR) do if file $i | grep PostScript > /dev/null ; then #date +%x-%X >> $LOGFILE #file $i >> $LOGFILE #ps2pdf $i $i.pdf >> $LOGFILE #rm -vf $i #echo >> $LOGFILE echo $i fi done -<mason@aries:/dev/pts/0>--<1837:mar,09 mar 04>-------------------</home/mason>- -<Yes, Master?>-$ ti conviene mettere un header all inizio del file di log, senno non si capisce quando parte una sessione, all'inizio tipo echo -e \\nInizio procedura $(date)\\n >> LOGFILE per il ps2pdf userei anche basename senno,dato un file pippo.ps, con quel comando ottieni pippo.ps.pdf che non e il max, cmq consulta il man di basename. `basename $i .ps`.pdf questo dovrebbe fungere al posto di $i.pdf
__________________
e' difficile cio' che non si conosce Tic Tac Andrew Morton, 15/02/2008 LKML:"`tmp' is an awful identifier, and renaming it to `temp' hardly improves it." Ultima modifica di Mason : 09-03-2004 alle 16:39. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Aggiungendo solo il ; mi da i seguenti errori:
+ umask 0000 + WORKDIR=/distiller + LOGFILE=/distiller/log/file.log + cd /distiller ++ ls /distiller + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory + 'file $i | grep PostScript > /dev/null' ./f2pdf: line 13: file $i | grep PostScript > /dev/null: No such file or directory mentre seguendo le istruzioni di Mason, funziona tutto alla perfezione. Grazie a tutti e due per l'aiuto. P.S. Comunque lo script l'hò copiato da una rivista, ma non sono ancora arrivato a studiare gli script.................ci arriverò. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:54.