Cách tạo và ghim phím tắt Unity vào một lệnh / shellscript cụ thể


9

Đây không phải là một bản sao vì tôi đã bỏ ra một khoản tiền lớn trong khi cố gắng tìm giải pháp từ Hỏi Ubuntu và Google, nhưng không có kết quả. Đây là một vấn đề cụ thể sau khi ghim thành công phím tắt vào Unity.

Lệnh tôi đang cố gắng ghim là:

rdesktop -u user -d DOMAIN -g 1380x849 -r sound:local -p password -x 0x80 -P -a 32 -k fi 192.168.1.103

Được rồi, vì vậy những điều tôi đã thử là:

  1. Tạo thủ công rdesk.desktop sẽ sử dụng rdesktop ứng dụng với một số tham số lệnh để kết nối với máy từ xa và tự động đăng nhập. Tôi có thể kéo trình khởi chạy này đến Unity thành công.

  2. Tạo trình khởi chạy thông qua tiện ích Menu chính, nhấn biểu tượng Ubuntu và khởi chạy phiên từ đó, sau đó ghim biểu tượng rdesktop thực tế xuất hiện khi khởi chạy.

Cả hai phương pháp đều hoạt động một phần. Tôi có thể nhận được một phím tắt đẹp với biểu tượng mà tôi chọn vào thanh tác vụ với (1), nhưng khi nhấp vào phím tắt này, biểu tượng thứ hai (rdesktop thực tế) bật xuống dưới cùng của thanh Unity. Ghim biểu tượng thứ hai này hoạt động, nhưng nó không thực sự làm gì khi nhấp vào SAU Tôi đã đóng phiên. Biểu tượng được ghim từ phương thức (2) hoạt động giống hệt nhau.

Khi di chuột qua, biểu tượng thứ hai hiển thị cho tôi: rdesktop - 192.168.1.103

Làm cách nào tôi có thể tạo lối tắt đến lệnh rdesktop với các tham số và ghim nó vào Unity để biểu tượng tôi nhấp được tô sáng và phản hồi lại các lần nhấp ngay cả sau khi đóng phiên? Ngoài ra, tôi đoán rằng bằng cách nào đó tôi có thể chỉnh sửa biểu tượng được ghim thứ hai để hoạt động với các tham số chính xác để rdesktop thực sự mở, tôi không thể tìm thấy nó ở bất cứ đâu trong hệ thống tệp để xem nhanh.

Chỉnh sửa: đây là mục .desktop của tôi mà tôi đã kéo vào Unity

[Desktop Entry]
Name=Remotedesktop Client
Comment=Connect to a remote Windows Terminal-Server
Exec=rdesktop -u name -d DOMAIN -g 1380x849 -r sound:local -p password -x 0x80 -P -a 32 -k fi 192.168.1.103
Icon=/usr/share/icons/hicolor/scalable/apps/nm-device-wired.svg
Terminal=false
Hidden=false
Type=Application
Version=1.0
Encoding=UTF-8

Đây là một ảnh chụp màn hình để làm rõ:

nhập mô tả hình ảnh ở đây

Phần trên màu đen nổi bật là .Desktop của tôi và phần dưới là những gì tôi nhận được khi nhấp vào nó. Phần trên thực sự sẽ chỉ hoạt động một lần, và nếu tôi bỏ ghim nó và chuyển lại cho Unity, nó sẽ hoạt động trở lại, một lần.

Câu trả lời:


11

Bạn cần thiết lập WMClass thành rdesktop trong tệp .desktop của bạn. Cái này hoạt động với tôi:

[Desktop Entry]
Version=1.0
Type=Application
Name=Gacela
Exec=rdesktop #####:####
Icon=/usr/share/icons/gacela.png
Comment=Conexion co Gacela
Categories=Internet;
Terminal=false
StartupNotify=true
StartupWMClass=rdesktop
GenericName=

Để có được WMClass của bất kỳ cửa sổ đang chạy nào, bạn cần sử dụng lệnh này:

xprop

và bấm vào cửa sổ mà bạn muốn xác định. Tìm giá trị của WM_CLASS trong đầu ra hoặc grep nó nếu bạn thích đầu ra nhỏ hơn:

xprop | grep WM_CLASS

Không thể phức tạp hơn khi tạo một lối tắt trong Unity?!
Dan Dascalescu

Đây không phải là hướng dẫn để tạo một lối tắt chung, giải pháp này chỉ cần thiết khi chương trình phù hợp với tên Windows và Chương trình không thể thực hiện được.
Javier Rivera
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.