Я использую wget
команду в фоновом режиме, как это
wget -bq
и это печатает
Продолжая в фоновом режиме, pid 31754.
Но когда я набираю команду jobs
, я не вижу свою работу (хотя загрузка еще не завершена).
Я использую wget
команду в фоновом режиме, как это
wget -bq
и это печатает
Продолжая в фоновом режиме, pid 31754.
Но когда я набираю команду jobs
, я не вижу свою работу (хотя загрузка еще не завершена).
ps -p 31754
Jjobs
работает только для (этого) элемента управления заданием оболочки (а именно, для&
аннотаций, ctrl-z илиbg
commamd). Общий процесс листинга (ps -a
покажет)Ответы:
При использовании
wget
с-b
или--background
он ставит себя в фоновом режиме, отсоединяясь от текущей оболочки ( отщепляя дочерний процесс и завершая родительский ). Поскольку это не оболочка, которая помещает его в фоновый режим как асинхронное задание, оно не будет отображаться как задание при использованииjobs
.Чтобы запустить
wget
в оболочке асинхронное (фоновое) задание, используйтеЕсли вы сделаете это, вы можете дополнительно перенаправить вывод в какой-либо файл (что
wget
происходит автоматически с-b
), или отменить его, перенаправив/dev/null
или используя-q
или--quiet
.источник
Потому что это само по себе на заднем плане. Используйте,
&
чтобы сказать bash, чтобы поместить его в фоновый режим, и поместить его в список заданий bash.Фон и список управления заданиями не совпадают. Bash помещает все свои фоновые процессы в свой контрольный список заданий (по умолчанию), но процессы могут быть задокументированы без внесения в список. Только Bash может поставить работу в своем списке.
Там могут быть преимущества для
-bg
варианта (я не знаю, что). Напримерssh
, опция background, переводит ее в фоновый режим после запроса пароля.источник
-bq
, то есть,-b
и-q
нет-bg
.Процесс с pid 31754 существует; если вы печатаете,
ps -e |grep 31754
но поскольку это не задание, которое можно снова переместить на передний план, оно не отображается командой заданий.wget -bq
автоматически отправлять вывод на фон без опций, чтобы снова переместить его на передний план.источник
ps
имеет-p
опцию, которую можно использовать для запроса определенного PID, или можно использоватьpgrep wget
.Я обычно использую,
tail wget-log
чтобы увидеть последние несколько строк журнала, что дает мне представление о статусе загрузки.источник