Il 05/04/2015 15:27, liftman ha scritto:
> Visto che non scrive mai nessuno, io ne approfitto :-)
>
> Ho ben chiaro come aprire un file su disco, come leggerlo, cancellarlo o
> semplicemente crearlo. Quello che non mi è ben chiaro è quando si cerca
> un file e lui non c'è.
> Mi spiego meglio con uno dei tanti esempi trovati in rete:
>
> #!/usr/bin/perl
> print "Inserisci il nome del file che vuoi modificaren";
> chomp($file=<StdIN>);
> if (-e $file) {
> ..
> } else {
> die "File non trovaton";
> }
>
> più o meno gli esempi sono tutti su questa falsariga, quindi viene
> spontaneo pensare che se il file non viene trovato, sia obbligatorio
> fermare l'esecuzione ed uscire con il messaggio di errore (die "File non
> trovaton";).
>
> In nessun esempio (il che lascia pensare che i vari tutorial siano per
> la maggior parte dei cut&paste...) si trova un'uscita diversa tipo:
>
> else {
> print "ma chi se ne frega, io proseguo e ti arrangi";
> }
>
> Alla fine la domanda d'ordinanza: ci sono controindicazioni a non usare
> "die"?
>
die dovrebbe essere usato per gli errori imprevisti non per gli errori
utente
Se un utente immette un nome file non esistente si stampa su stderr il
messaggio di errore e si esce con un exit code != 0
Inoltre nella sintassi dei comandi unix (ma anche windows) non si fanno
programmi a linea di comando che chiedono 'dammi il nome del file'
Si usa la sintassi std di unix:
<comando> <opzioni> <nomefile>...