사용 중인데 i3wm
화면 잠금을 해제한 후 스크립트를 실행하고 싶습니다. 다음에 설명된 단계를 사용하여 화면을 수동으로 잠갔을 때 작동하도록 할 수 있었습니다.
이 게시물.
하지만 화면이 자동으로 잠금 해제된 후에는 작동할 수 없습니다 xautolock
. 예를 들어 다음과 같습니다.
xautolock -time 5 -locker "blurlock -n && my_script.sh"
작동하지 않습니다. 5분 후에 화면이 잠기지만 잠금 해제 후 스크립트가 실행되지 않습니다. 실제로는 전혀 실행되지 않는 것 같습니다.
작동하게 하는 방법이 있나요? 아마 사용하거나 xss-lock
비슷한가요?
편집하다
댓글에서 @aviro의 제안에 따라 스크립트를 다음으로 변경했습니다.
#!/usr/bin/bash
echo "Hello" >> $HOME/temp.txt
blurlock -n
echo "Unlocked" >> $HOME/temp.txt
그리고 그는 도망쳤다 xautolock -time 1 -locker "my_script.sh &"
. 화면 잠금, 파일에는 temp.txt
스크립트에 두 줄이 포함되어 있습니다. 따라서 xautolock
.
스크립트를 통해 수행하려는 작업 중 일부는 ffmpeg
스크립트를 다음과 같이 변경했습니다.
#!/usr/bin/bash
blurlock -n
ffmpeg -f video4linux2 -s vga -i /dev/video-cam $HOME/Pictures/test.jpg
notify-send -t 30000 'Unlocked'
이는 수동으로 실행할 때 작동합니다. 화면이 잠겨 있고, 잠금이 해제되면 "잠금 해제됨"이라는 알림이 팝업되고 웹캠의 이미지가 지정된 대로 파일에 기록됩니다.
그러나 런타임을 통해 xautolock -locker "my_script.sh"
잠금 해제 후에는 이미지 캡처나 알림이 없습니다. 터미널에서 실행 중이고 xautolock
백그라운드로 전송 중이므로 &
다음 메시지가 나타납니다.
[1] + 581665 suspended (tty output) xautolock -time 1 -locker "my_script.sh"
명령 > /dev/null 2>&1
에 추가해도 도움이 되지 않습니다.ffmpeg
답변1
많은 실험 끝에 명령 nohup
앞에 사용하면 ffmpeg
효과가 있을 것이라고 확신합니다. 즉, 위의 줄은 my_script.sh
다음과 같이 변경되어야 합니다.
nohup ffmpeg -f video4linux2 -s vga -i /dev/video-cam $HOME/Pictures/test.jpg > /dev/null 2>&1