"xautolock"을 사용하여 스크립트를 실행하고 잠금을 해제한 후 "ffmpeg"를 사용하여 이미지를 캡처합니다.

"xautolock"을 사용하여 스크립트를 실행하고 잠금을 해제한 후 "ffmpeg"를 사용하여 이미지를 캡처합니다.

사용 중인데 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

관련 정보