В скрипте bash мне нужно загрузить файл из сети. wget
Для этого я использую команду . Я хотел бы записать вывод команды wget
и в «одновременно» получить приглашение вывода на терминале.
Я искал, но man wget
не нашел способа этого добиться.
Похоже, что если включить журнал с помощью параметра -o
или -a
, то вывод приглашения автоматически «перенаправляется» в файл журнала, и на терминале ничего не отображается во время выполнения скрипта, пока он не завершит загрузку.
wget -a wget_log --no-check-certificate --auth-no-challenge --http-user=$jen_uname --http-password=$jen_psswd ссылка_на_файл
Возможно ли сделать и то, и другое? Выводить в командную строку и записывать в файл журнала?
решение1
tee
Для этого используйте замечательную команду:
wget --no-check-certificate --auth-no-challenge --http-user=$jen_uname --http-password=$jen_psswd 2>&1 | tee -a wget_log
THe 2>&1
означает, что STDERR идет в то же место, что и STDOUT, и они оба передаются в tee
. -a
Средства append. tee
затем отправят вывод как в wget_log, так и в STDOUT.