Как вывести работу на передний план и разрешить ввод данных пользователем с терминала
Аналогично этому вопросу, но по-другому важно: мне нужно запустить несколько заданий из сценария и запустить их в фоновом режиме. Затем, чтобы управлять ими или проверять их прогресс, мне нужно вывести их на передний план и разрешить ввод данных пользователем.
Что я сейчас делаю:
Начните кучу работ в цикле, например
for ip in $(cat ip-list.txt); do run-job.sh $ip &; done
Вывести индивидуальную работу на передний план, например, с
fg 1
Это выводит задание на первый план, однако есть две проблемы: я не могу предоставить пользовательский ввод - процесс не отвечает, как если бы процесс, получающий мой ввод, был сценарием, запустившим задание, а не самим заданием; также переменная $ ip отображается без оценки, то есть в точности как «$ ip», а не «192.168.1.34». Однако, когда я набираю 'jobs', я вижу все 10 заданий, перечисленных отдельно (но все они выглядят одинаково: "run-job.sh $ ip". Мне нужно использовать ps, чтобы увидеть, какое задание использует какое значение ip.)
Мне бы хотелось, чтобы поведение было таким же, как если бы я начал все эти задания, набрав их по отдельности, а затем нажав control-z, чтобы поместить их в фоновый режим. Если я сделаю это таким образом, когда я выведу их на передний план с помощью fg, они позволят вводить данные пользователем непосредственно в процесс, а также переменная $ ip будет показана с оценкой «192.168.1.34». Тем не менее, ввод вручную заданий не представляется возможным для десятков или десятков заданий.
0 ответов на вопрос
Похожие вопросы
-
2
.profile в Mac OS X?
-
1
Приостановить все, кроме x задач, интенсивно использующих процессор
-
10
Как я могу найти в истории bash и повторно запустить команду?
-
-
2
Можно ли передать выходные данные одной команды двум другим командам?
-
8
Переименуйте группу файлов одной командой
-
2
Почему мой путь не обновляется * сейчас *?
-
5
Как удалить символическую ссылку на каталог?
-
8
Спаси меня от бессмысленного терминала
-
9
Как можно добавить номер строки и табуляцию к каждой строке текстового файла?
-
1
Когда я должен положить конфигурации в .bashrc против. .bash_profile?