PDA

View Full Version : Crea un .sh sotto linux


texerasmo
24-06-2004, 16:42
Mi potete aiutare..
devo fare un .sh che mi faccia queste cose

mi lanci questa riga di codice


./tidy -ashtml -asxhtml -m nomefile.html(deve essere preso come parametro)
mv nomefile.html nome.xhtml

ilsensine
24-06-2004, 16:46
#!/bin/bash
./tidy -ashtml -asxhtml -m $1 || exit 1
mv $1 nome.xhtml

Ricorda di renderlo "eseguibile" con chmod +x
Non ho capito a cosa ti serve il parametro se poi lo rinomini in "nome.xhtml"...se ho capito male (ad es. devi semplicemente cambiarne l'estensione) fammi sapere...

texerasmo
24-06-2004, 17:01
per quanto riguarda la prima parte funziola il mv non funziona come mai?

ilsensine
24-06-2004, 17:11
Evidentemente il file che passi come parametro non viene creato...

texerasmo
24-06-2004, 17:29
ti assicuro che il file c'è

forse modificandolo ho fatto casini?


#!/bin/bash
./tidy -ashtml -asxhtml -o $1 $2 || exit 1
mv -f $2 nome.xhtml

è possibile metterci un help ovvero se non vengono passati due parametri mi manda un mesaggio di errore?

VICIUS
24-06-2004, 19:30
Originariamente inviato da texerasmo
[...]è possibile metterci un help ovvero se non vengono passati due parametri mi manda un mesaggio di errore?
puoi aggiungere un controllo sui parametri prima di lanciare tidy.
if [ $# -ne 2 ]; then
echo "voglio 2 parametri";
exit -1
fi
ciao ;)

texerasmo
25-06-2004, 09:43
if [ $# -ne 2 ]; then
echo "voglio 2 parametri";
exit -1
fi
./tidy -ashtml -asxhtml -o $1 $2 || exit 1
mv -f $2 nome.xhtml


così ?

tu mi sai perchè la seconda istruzione
mv -f $2 nome.xhtml
non vine eseguita

cavay
28-06-2004, 19:09
non sono pratichissimo con gli script ...cmq prova ad eliminare il "||exit"

a cosa serve?

se poi devi lanciarlo in back-gound perchè....fatti tuoi... allora metti il "&"

texerasmo
05-07-2004, 09:26
ok !!
|| mi è stato consigliato dal sensine

cavay
05-07-2004, 22:34
ok significa risolto?

cmq scusa per il "gound " è scappato...