สคริปต์ต่อไปนี้จะเขียนเวลาล็อค / ปลดล็อคในไฟล์time_xprofile
ในบ้านของคุณ
#!/bin/bash
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | \
( while true
do read X
if echo $X | grep "boolean true" &> /dev/null; then
echo "locking at $(date)" >> $HOME/time_xprofile
elif echo $X | grep "boolean false" &> /dev/null; then
echo "unlocking at $(date)" >> $HOME/time_xprofile
fi
done )
บันทึกสคริปต์ ให้สิทธิ์ดำเนินการ
chmod +x script.sh
วิธีการวิ่ง
./script.sh &
หมายเหตุสคริปต์ควรทำงานในพื้นหลัง อย่าฆ่ามัน หากคุณเปิดล็อคหน้าจอ / ปลดล็อคในขณะที่สคริปต์ทำงานในพื้นหลังเวลาล็อค / ปลดล็อคของคุณจะถูกบันทึกในtime_xprofile
ไฟล์ที่บ้านของคุณ หนึ่งสามารถใช้เพื่อเรียกใช้คำสั่งหรือสคริปต์ที่ล็อคหน้าจอ / ปลดล็อค
โปรดทราบว่าหากคุณปิดเทอร์มินัลปัจจุบันสคริปต์ของคุณจะถูกฆ่า คุณสามารถใช้ได้
nohup ./script.sh &
จากนั้นจะยังคงทำงานต่อไปแม้ว่าจะปิดเครื่องแล้วก็ตาม
วิธีการฆ่าสคริปต์
เพื่อฆ่ากระบวนการใช้ใน terminal
ps ax| grep "[s]cript.sh" | cut -d' ' -f2 | xargs kill
สคริปต์ข้างต้นได้รับแรงบันดาลใจจากคำตอบนี้