Как мне сохранить вывод системной команды в переменной и распечатать в файл?

#perl

#perl

Вопрос:

Я создаю wget и хотел бы, чтобы ответ был сохранен в переменной, подобной этой….

 $myresp = `wget yadda yadda`;
 

Обратите внимание, я не пытаюсь сохранить то, что возвращается из wget, в переменную… просто STDERR (или любой другой буфер, который он использует), который обычно выводится обратно в приглашение при использовании wget. Я вижу вывод, когда запускаю perl вручную, но я хочу, чтобы он был зарегистрирован… Я знаю, что это какая-то загадочная штуковина типа 2 amp;> 1, но не могу ее найти и подумал, что спрошу здесь…

заранее спасибо.

Ответ №1:

 $r = `wget yadda yadda 2>amp;1`
 

будет фиксировать стандартные значения out и stderr $r .

Комментарии:

1. np :). все, что вам нужно было сделать, это поменять amp; местами и >