] Я бы также использовал cron, чтобы «остановить» или «убить» эту службу или скрипт в указанное время.
Сначала создайте задание cron, чтобы запустить задание или сценарий.
(вы можете легко запустить другой cron, который завершит задание с именем
sudo pkill wget
)
Во-вторых, вы хотите видеть запущенные задачи crontab в удобном и читаемом формате в выводе:
ps -o pid,sess,cmd afx | egrep "( |/)cron( -f)?$"
Они появятся в первых строках, примерно так:
1108 1108 cron
4288 1108 \_ CRON
4289 4289 \_ /bin/sh -c /path/to/my/crontab/script1.sh
4290 4289 \_ /bin/bash /path/to/my/crontab/script1.sh
4295 4289 \_ /usr/bin/wget LINK
First столбец - это PID, второй - идентификатор сеанса, а третий - команда, запущенная cron. Вы можете убить все процессы, связанные с определенной задачей cron, используя идентификатор сеанса, поэтому в приведенном выше примере вы должны убить идентификатор сеанса 4289:
pkill -s 4289
Вам нужно поместить pkill в сценарий и запустить его как cron
Команда верна.
gnome-screenshot -a -c
Избегайте использования Windows или супер-ключа, используйте ассоциацию свободных ключей в системе.
У меня похожая ситуация, когда я привязываю ярлыки скриншотов системы к своим скриптам, поэтому, когда я вызываю ярлык gnome-screenshot
, он делает снимок экрана, сохраняет его в файл, а затем открывает в Gimp.
#!/bin/bash
SSFile=~/Images/screenshot_window.png
# This command takes a window screenshot and saves it to a file
gnome-screenshot -w -f $SSFile
flatpak run org.gimp.GIMP $SSFile
Чтобы захватить область, просто замените -w
на -a
и добавьте sleep 0.1
получил это из здесь , так что в моем случае окончательный сценарий будет:
#!/bin/bash
SSFile=~/Images//screenshot_area.png
sleep 0.1
# Take a Screenshot from an area and saves it to a file
gnome-screenshot -a -f $SSFile
flatpak run org.gimp.GIMP $SSFile
Без части sleep 0.1
нормально работает при запуске из терминала, nemo или кастомного лаунчера, но не с сочетания клавиш.