Рейтинг:1

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

флаг us

Я новичок в bash, и я пытаюсь сделать это, вот псевдокод:

id= "pidof rhytmbox" (rhytmbox меняет pid каждый раз, когда я его запускаю)

echo "Введите время: "
Время Читать

спать $время
убить $pid

Вы можете мне помочь?

Рейтинг:1
флаг us
pid=$(pidof rhythmbox)
echo $pid

echo "Enter time: "
read time
sleep $time
kill $pid

This one worked!

Рейтинг:0
флаг cn

Если вы собираетесь запустить свою команду с ограничением по времени, вы можете использовать тайм-аут:

#!/бин/баш

читать -r -p \
    "Введите время в минутах:" продолжительность

[[ ! $длительность =~ [^0-9] ]] && \
    таймаут ${длительность}м setsid rhytmbox &>/dev/null &

читать имеет опцию подсказки, которая отображается перед попыткой прочитать ввод. Вы можете использовать оператор регулярного выражения, чтобы гарантировать, что пользовательский ввод содержит только цифры. Теперь я обычно хочу поставить долгосрочный приложение в фоновом режиме, если я закрою терминал, вы можете сделать это с помощью setid команда &

Рейтинг:0
флаг om

Я дам несколько подсказок.

В Bash есть несколько способов присвоить вывод команды переменной.

pid=$(верхняя часть pidof)
pid=`pidof сверху` 

В остальном вы в основном на правильном пути. Вы, вероятно, должны проверить, что пользователь действительно вводит целое число, а не какой-либо другой текст, такой как полчаса.

John Boro avatar
флаг us
Спасибо --- pid=$(pidof, ритмбокс) эхо $pid эхо "Введите время: " Время Читать спать $время убить $pid
vidarlo avatar
флаг om
Если это ответило на ваш вопрос, пожалуйста, [примите его](https://askubuntu.com/help/someone-answers), нажав на галочку слева. Если вы получите новые и лучшие ответы, вы можете изменить принятый ответ в любое время.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.