Articles of Фоновый процесс

Управление фоновым процессом

Я ищу способ начать воспроизведение аудиофайла (mp3, m4a) в качестве фоновой задачи из оболочки, а затем иметь возможность делать такие вещи, как пауза / перемотка вперед, позже. Это возможно либо с использованием встроенных параметров командной строки: $ play audio.mp3 & $ play –pause Или через идентификатор процесса игрока? $ play audio.mp3 & echo $! > […]

Как выйти из процесса после отказа

Я использую disown для запуска длительного процесса через SSH. Например я запускаю следующую программу: vmd -e script.tcl > out.txt & Затем я использую disown -a чтобы отсоединить его от оболочки. Когда я out.txt подключаю терминал, out.txt показывает, что программа завершилась. Тем не менее, он показывает командную строку vmd ( vmd> ). VMD – это программа […]

Амперсанд также действует как терминатор строки?

Я знаю, что в bash символ & делегирует команду фону, но должен ли он также использоваться в качестве специального ограничителя строки? Чтобы привести пример того, что я имею в виду, я нашел эту строку в http://tldp.org/LDP/abs/html/ioredirintro.html. while read a; do echo “FIFO1: $a”; done /tmp/fifo1 это выше эквивалентно ..? while read a; do echo “FIFO1: […]

Как я могу проверить, не прошла ли фоновая работа до ее выхода?

Я пишу скрипт, который запускает виртуальный кадровый буфер с Xvfb. Я хочу убедиться, что команда выполнена успешно, но я не хочу, чтобы скрипт ждал ее завершения, потому что Xvfb продолжает работать, пока X-сервер не будет уничтожен. Например: if ! Xvfb $DISPLAY &; then echo ‘Error: failed to create virtual frame buffer’ exit 1 fi xpid=$! […]

Как я могу защитить контейнер Docker, чтобы он всегда работал?

У меня есть контейнер HBase Docker, который работает на нескольких ноутбуках разработчиков. Когда разработчики закрывают свои ноутбуки, контейнер Docker неизменно умирает и перестает работать. Вот как мы вызываем контейнер: $ docker run -d –hostname hbase-db –name hbase \ -p 2181:2181 -p 8080:8080 -p 8085:8085 -p 9090:9090 -p 9095:9095 \ -p 16000:16000 -p 16010:16010 -p 16201:16201 […]

Тестирование бесконечного цикла в фоновом режиме в Docker?

Я хочу запустить фоновую очередь, работающую в моем образе dockerа: php artisan queue:work –daemon –sleep=1 –tries=3 & Сразу после этого он запускает Apache httpd с приложением PHP laravel . Приложение laravel отправляет push-уведомления в Redis. Работник фоновой очереди собирает сообщения от Redis и отправляет их через службу push-уведомлений. Это работает и выходит из системы каждую […]

Как проанализировать эту команду `{2> & 3« $ @ »&} 3> & 2 2> / dev / null`?

Несколько недель назад я видел странный ответ на вопрос « (Как) тихо запустить задачу (и) в фоновом режиме? ». Это решение кажется неправильным ( см. Мой ответ ), хотя shell, похоже, запускает задачу в фоновом режиме. I. Проблема: можем ли мы на самом деле перенаправить стандартную ошибку оболочки? С предлагаемым решением нет объяснения, и анализ […]

PID фоновой функции F в командах, вызываемых в подshellх внутри F

Когда foo запускается в фоновом режиме, BASHPID для foo ( bashpid_of_foo ) недоступен внутри тел от bar_1 до bar_n через $BASHPID , так как они вызываются с помощью функции подстановки команд в bash : function foo() { local bashpid_of_foo=$BASHPID local output # desired to be shared by all Command Substitutions # in the body of […]

Запустите команду в фоновом режиме, дождитесь определенной строки журнала, затем выполните новую команду на переднем плане

Я пытаюсь запустить некоторые операторы SQL в базе данных mssql перед запуском БД (это происходит как часть шага запуска Docker). Из того, что я могу сказать, единственный способ сделать это – запустить сервер в фоновом режиме, дождаться его запуска, затем запустить файл sql и убить сервер. Исходя из этого вопроса у меня есть следующее, которое […]

удаленный процесс, запущенный через ssh, убивается, если пользовательский интерфейс закрыт

Я написал скрипт, который по сути делает 2 вещи: Запускает пользовательский интерфейс для прослушивания фактической программы, работающей на сервере удаленно запустить программу на сервере Все идет хорошо, пользовательский интерфейс запускается, затем программа запускается на сервере. Но как только я закрываю интерфейс, удаленный процесс уничтожается. Соответствующие части сценария: ui_pid = subprocess.check_output(‘/home/user/git/sim_ui.sh’, shell=True) command = ‘ssh user@server […]