Ho uno script perl che apre un file e scrive alcuni dati in esso. A volte questo file sta leggendo solo le autorizzazioni su alcune macchine. Per questi casi, al momento la sceneggiatura non è più in grado di aprire il file. Il mio requisito è che in questi casi, voglio che il mio script continui e invece di scrivere il contenuto nel file, lo inserisce in STDOUT. Userò il warn
invece di morire, ma voglio sapere posso alias il mio file gestire FILE1
a STDOUT
tale che non ho bisogno di modificare il codice rimanente, la ragione essendo nel mio codice reale print FILE1 <>
è presente in molti posti e non è possibile per me di mettere le condizioni if\else
ovunque. Voglio che io sia alias FILE1
a STDOUT
in modo tale che l'istruzione di stampa lo stamperà in STDOUT o scriverà in file a seconda del valore impostato nel filehandle FILE1
. È possibile usare perl?L'handle del file alias in STDOUT in perl
$file = "testfile.txt";
open(FILE1, ">> $file") or die "Can not read file $file: $! \n";
print FILE1 "Line1 \n";
print FILE1 "Line2 \n";
print FILE1 "Line3 \n";
print FILE1 "Line4 \n";
close FILE1
Eventuali duplicati di http://stackoverflow.com/questions/3807231/how-can- I-test-if-i-can-write-to-a-filehandle – devnull