2009-05-30 29 views
5

Xin chào, tôi muốn có một kịch bản lệnh shell để chạy mỗi khi tôi mở khóa máy tính của mình, trên KDE 4. Tôi đã học được rằng tôi có thể chạy một script bằng cách ghi đè/usr/lib/kde4/libexec/krunner_lock điều, sau đó là nhị phân krunner_lock ban đầu, và về cơ bản tôi muốn làm điều ngược lại: khởi chạy một kịch bản lệnh "undoes" những gì mà script khóa làm. Tôi đang sử dụng Kubuntu 9.04 64 bit nhưng tôi đánh giá cao các câu trả lời cho bất kỳ hệ điều hành nào, trong trường hợp tôi muốn thực hiện tương tự trên hệ thống đó.Chạy tập lệnh khi mở khóa?

Trả lời

2

Đã tìm ra trên KDE forums here. Giải pháp của Porges là khá gần với câu trả lời nhưng nó không hoàn toàn ở đó. Bạn phải vượt qua các đối số mà kịch bản nhận được đến krunner_lock thực, như vậy: krunner_lock_bin [email protected]

+0

chỉ tò mò nếu "real krunner_lock" eq ​​"real_krunner_lock" – vol7ron

1

Đọc từ this page, có vẻ như krunner_lock sẽ vẫn chạy miễn là màn hình bị khóa, vì vậy bạn có thể đặt các lệnh sau dòng chạy và chúng sẽ chạy khi màn hình mở.

ví dụ:

#!/bin/bash 
... 
# do stuff 
... 
real_krunner_lock # exits once screen unlocks... 
... 
# undo stuff 
0

Phiên bản dành cho năm 2015 mà làm việc dưới Kubuntu 14.10 sử dụng Widgets Desktop thay đồ:

#!/bin/bash 

lockpidname="/usr/bin/plasma-overlay --nofork" 

$lockpidname 

check_slock() { 
if [[ $(pgrep -fla $lockpidname) ]]; then 
SLOCKED=1 
else 
SLOCKED=0 
fi 
} 

while true; do 
    sleep 5 
    check_slock 
    case $SLOCKED in 
    0) 
    echo "System unlocked run something here" 
    break 
    ;; 
    esac 

done 

này là dành cho tình hình khi bạn muốn gán tổ hợp CTRL + ATL + L trong phần Tùy chỉnh trong Lối tắt bàn phím chung.

Các vấn đề liên quan