У меня есть сценарий удара на моем названном рабочем столе script.sh
.
В настоящее время, если я хочу выполнить его, я открываю терминал и тип ./script.sh
, и если я хочу остановить его, я должен нажать Ctrl + C
То, что я хотел бы сделать, связывают сценарий с ключом, скажем, 7, например, так, чтобы, если сценарий выключен, и я нажал 7, он включен, и если это уже включено, и я нажимаю 7, он выключен.
Я уже знаю, как обязать его в сочетаниях клавиш включать его, но проблема состоит в том, что нажатие ярлыка снова только создает другой экземпляр сценария, который не является тем, что я хочу.
Предполагая, что ваш скрипт исполняемый, вы можете легко переключать скрипт с помощью крошечного скрипта, приведенного ниже:
#!/bin/bash
scriptpath='/full/path/to/script'
if ! pgrep -f "$scriptpath"
then
nohup "$scriptpath" &
else
pkill -f "$scriptpath"
fi
toggle_scrip.sh
scriptpath='/full/path/to/script'
введите полный путь к вашему скрипту (между одинарными кавычками). Если вам нужно управлять несколькими сценариями, укажите путь к аргументу приведенного выше фрагмента.
Я не думаю, что, переключая что-то этот путь посредством привязки клавиш возможен.
Однако одна опция (определенный взлом, но эй, это работает), должен был бы изменить сценарий, таким образом, это может обнаружить другой экземпляр себя выполнение. Тот путь при запуске второго сценария посредством привязки клавиш Вы могли выпустить pkill или что-то подобное, для завершения и второй и первой инстанции сценария.