Come sapere se esiste un file in Perl

Perl ha una serie di utili operatori di test dei file che possono essere usati per vedere se un file esiste o no. Tra questi c'è -e, che controlla se esiste un file. Queste informazioni potrebbero esserti utili quando stai lavorando a uno script che necessita dell'accesso a un file specifico e vuoi essere sicuro che il file sia lì prima di eseguire le operazioni. Se, ad esempio, lo script ha un registro o un file di configurazione da cui dipende, verificarlo prima. Lo script di esempio riportato di seguito genera un errore descrittivo se non viene trovato un file utilizzando questo test.

#! / Usr / bin / perl
$ nomefile = '/path/to/your/file.doc';
if (-e $ nomefile)
stampa "Il file esiste!";

Innanzitutto, si crea una stringa che contiene il percorso del file che si desidera verificare. Quindi avvolgi il -e (esiste) in un blocco condizionale in modo tale che l'istruzione print (o qualunque cosa tu ci metta) venga chiamata solo se il file esiste. È possibile verificare il contrario - che il file non esiste - utilizzando il salvo che condizionale:

salvo (-e $ nomefile) 
stampa "Il file non esiste!";

Altri operatori di test dei file

Puoi testare due o più cose alla volta usando gli operatori "e" (&&) o "o" (||). Alcuni altri operatori di test dei file Perl sono:

  • -r controlla se il file è leggibile
  • -w controlla se il file è scrivibile
  • -X controlla se il file è eseguibile
  • -z controlla se il file è vuoto
  • -f controlla se il file è un file normale
  • -d controlla se il file è una directory
  • -l controlla se il file è un collegamento simbolico

L'uso di un test file può aiutarti a evitare errori o a renderti consapevole di un errore che deve essere corretto.