Có cách nào để bắt đầu hoạt hình khẩn cấp trên mạng của một biểu tượng trên trình khởi chạy Unity từ dòng lệnh không?


9

Sẽ thật tuyệt nếu người ta có thể sử dụng nó trong thiết bị đầu cuối để thông báo rằng một số công việc đòi hỏi nhiều thời gian đã được thực hiện, ví dụ: "apt-get dist-nâng cấp; ur-anim".

Câu trả lời:


8

Bạn có thể đặt gợi ý khẩn cấp bằng cách sử dụng wmctrl(cần được cài đặt):

some_task ; wmctrl -i -r $WINDOWID -b add,demands_attention

Trường hợp $WINDOWIDmột biến giữ ID của cửa sổ đầu cuối. Vì quá dài để nhập, bạn có thể thiết lập bí danh cho nó trong ~/.bashrc:

alias set_urgent='wmctrl -i -r $WINDOWID -b add,demands_attention'

Sau đó, bạn chỉ cần chạy:

some_task ; set_urgent

Tất nhiên điều này sẽ không làm gì nếu thiết bị đầu cuối hoạt động tại thời điểm wmctrllệnh được chạy.


1
Nếu bạn muốn một stand-in cho some_task(để thử nghiệm), hãy sử dụng sleep 5, nó sẽ tạm dừng trong 5 giây. Ngoài ra, bạn sẽ muốn thay thế văn bản được trích dẫn "Terminal" bằng (một phần) tiêu đề của thiết bị đầu cuối của bạn, vì từ "Terminal" có thể không xuất hiện trong tiêu đề cửa sổ của thiết bị đầu cuối của bạn (điều này có thể được định cấu hình qua Chỉnh sửa-> Tùy chọn hồ sơ -> Tab Tiêu đề và Lệnh-> Khi các lệnh đầu cuối thiết lập thả xuống tiêu đề của riêng chúng.).
Kevin

Vâng, làm điều này thông qua kết hợp tiêu đề là xấu xí. Tôi đã tìm kiếm một cách để trả về id cửa sổ của thiết bị đầu cuối và sử dụng nó với công tắc -i của wmctrl, nhưng không gặp may.
htorque

Wiki compiz có một số thông tin thực sự hữu ích về điều này
Kevin

Vấn đề với điều này là, đó là tính tương tác - bạn cần nhấp vào cửa sổ để lấy thông tin. Điều gì sẽ là tuyệt vời : alias urgent_blink='wmctrl -i -r $(get me the window id) -b add,demands_attention'. Mặt khác, không quan trọng trường hợp thiết bị đầu cuối nào làm cho trình khởi chạy ngọ nguậy.
htorque

1
Cảm ơn câu trả lời của bạn, giải pháp cuối cùng của tôi là:alias yoo-hoo='wmctrl -i -r $WINDOWID -b add,demands_attention
Jan Nekvasil

1

Cài đặt thông báo-gửi.

sudo apt-get update; sudo apt-get upgrade; notify-send 'Ubuntu updated' 'All updates complete'
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.