Как записать вывод терминала в файл, но оставить окно терминала активным, чтобы можно было отвечать на подсказки? [duplicate]

Я пытаюсь запустить большой скрипт, который запрашивает ответы по ходу работы. Я хочу запустить его в режиме verbose, и поэтому будет значительный вывод, и я хотел бы его перехватить. Поэтому я хотел бы запустить его таким образом, чтобы он позволял мне отвечать на вопросы, а также отправлять вывод в файл.

Можно ли это сделать?

Спасибо.

Mike

0
задан 23 September 2015 в 02:09

1 ответ

При ответе Вы даете вход через дескриптор файла 0 т.е. STDIN, и программа показывает вывод на дескрипторе файла 1 т.е. STDOUT. Поскольку Вы видите, что эти два являются wowking на различных дескрипторах файлов, и управление тем не должно препятствовать операции другого.

Обратите внимание, что существует также дескриптор файла 2 т.е. STDERR, обычно используемый для показа сообщений об ошибках.

В Вас случай запускает скрипт как:

./myscript.sh >~/script.out

Теперь можно предоставить входные ответы на вопросы сценария через STDIN, и вывод программы будет сохранен в ~/script.out.

Можно сохранить ошибку также, например, в другом файле:

./myscript.sh >~/script.out 2>~/script.err

STDOUT будет сохранен в ~/script.out и STDERR будет сохранен в ~/script.err.

Можно сохранить вывод и ошибку оба в том же файле:

./myscript.sh >~/script.all 2>&1

Теперь ~/script.all будет содержать выводы и сообщения об ошибках (если таковые имеются) от myscript.sh.

1
ответ дан 23 September 2015 в 02:09

Другие вопросы по тегам:

Похожие вопросы: