Sto cercando di ottenere la risposta di una chiamata di arricciatura in una variabile in perl.Come ottengo l'output di arricciatura in una variabile in Perl se la invoco usando i backtics?
my $foo = `curl yadd yadda`;
print $foo;
non funziona. Quando lo eseguo alla riga di comando, la chiamata di arricciatura stampa correttamente tutto il suo output nel terminale, ma la variabile non viene riempita con quei dati.
C'è un modo per farlo senza installare e chiamare la lib di Perl curl?
Che ha fatto! Grazie!. Ti darò il segno di spunta se riesci ad aggiungere una o due frasi su cosa fa effettivamente> 2 & 1 e perché spostarlo da stderr a qualunque cosa & 1 lo scarichi nella variabile. Grazie mille! –
2> foo significa "reindirizza lo stderr nel file pippo". & 1 significa stdout, cioè reindirizza lo stderr su stdout.Puoi anche farlo in un altro modo: "> & 2" che significa "reindirizzamento da stdout a stderr". Per reindirizzare sia stdout che stderr, puoi usare "> &", ad esempio foocommand &> file_with_boththings.txt – sunny256
La notazione '2> & 1' significa che il descrittore di file 2 (stderr) è inviato nello stesso posto del descrittore di file 1 (stdout) viene inviato a. Quindi sia l'output standard che l'errore standard vengono scritti nello stesso punto (output standard). E i backtick di Perl catturano l'output standard del comando eseguito, quindi ... –