Tạo lối tắt toàn cầu để chạy các ứng dụng dòng lệnh


31

Những bước nào tôi cần để chạy một chương trình dòng lệnh thông qua một phím tắt toàn cầu?

Tôi thiết lập Automator để tạo Run Shell Script mới và cố gắng gán một phím tắt trong Tùy chọn hệ thống -> Bàn phím -> Phím tắt, nhưng không có gì xảy ra.


1
Câu hỏi của tôi là khác nhau. Tôi không muốn một cửa sổ đầu cuối mở ra.
z-đệm

1
Nếu bạn không muốn một cửa sổ Terminal mở, bạn đang hỏi điều tương tự như bài đăng được liên kết.
Daniel

Câu trả lời:


8

Áp dụng nó:

do shell script "ls ~/Desktop"

Thêm những gì bạn muốn ở đó, sau đó bạn có thể chạy Applescript thông qua một ứng dụng phím nóng toàn cầu. Tôi muốn giới thiệu Spark

Ồ, và tôi không biết về việc gán một phím tắt thông qua Tùy chọn hệ thống


Chơi lô tô. Điều lạ là chức năng này chưa được tích hợp trong OSX. Cám ơn rất nhiều!
Adam Flott

@Adam Vâng, nó hơi kỳ quặc.
daviesgeek

8
Ngoại trừ việc nó được tích hợp vào OS X thông qua Dịch vụ tự động, @AdamFlott, đó chỉ là câu trả lời bạn chấp nhận không sử dụng phương pháp đó.
Daniel

2
Ngoài ra, AppleScript và Automator một phần của OS X.
Daniel

1
-1 để sử dụng bên thứ 3 mà không có lý do chính đáng.
cregox

32

Không biết chi tiết cụ thể về những gì bạn đang tìm kiếm, tôi khuyên bạn nên tạo một Dịch vụ mới thông qua Automator . Các dịch vụ có thể được liên kết với các kích hoạt tổ hợp phím và có thể thực thi các tập lệnh shell (trong số những thứ khác). nhập mô tả hình ảnh ở đây

Để thiết lập phím tắt, hãy đi tới Tùy chọn hệ thống -> Bàn phím -> Phím tắt -> Dịch vụ, chọn dịch vụ bạn vừa lưu và sau đó nhấp vào nút "Thêm phím tắt".


Tôi không rõ sau khi lưu dịch vụ về cách bạn thiết lập phím tắt.
Liron Yahdav

@LironYahdav Xem chỉnh sửa ở trên
Daniel

12

FastScripts bao gồm tất cả các tập lệnh trong ~ / Library / Script /, vì vậy bạn không phải thêm tệp theo cách thủ công. Nó cũng hỗ trợ các kịch bản dành riêng cho ứng dụng.

Các ứng dụng khác có thể được sử dụng để gán phím tắt để chạy tập lệnh:

Bạn cũng có thể tạo một dịch vụ Automator:

  1. Mở Automator và chọn mẫu Dịch vụ
  2. Thêm Run Shell Script hoặc Chạy hành động AppleScript
  3. Kiểm tra xem loại đầu vào và phạm vi ứng dụng có đúng không
  4. Dán đoạn script và lưu dịch vụ
  5. Chỉ định một phím tắt trong ngăn tùy chọn Bàn phím

Có lỗi trong 10.7 và 10.8 trong đó các phím tắt cho dịch vụ không luôn hoạt động cho đến khi menu dịch vụ được hiển thị từ thanh menu. Các phím tắt cho các dịch vụ không hoạt động khi ứng dụng ngoài cùng không có thanh menu hoặc menu dịch vụ. Cũng có một sự chậm trễ ngắn trước khi các dịch vụ được chạy.


cộng với một đề cập đến các ứng dụng khác cũng làm điều đó. Tôi gần như đã đi cài đặt spark khi tôi đã sử dụng QuickSilver. Tôi không biết nó có lựa chọn đó.
Marlon

đồng thời, phần trong ngăn "Tùy chọn bàn phím" để thêm lối tắt sẽ nằm trong phần "Dịch vụ", nếu sử dụng phương pháp Tự động hóa.
Brad

7

Tôi đã thử tất cả các tùy chọn đó, nhưng chúng quá phức tạp và không đáng tin cậy hoặc thực sự tốn kém. Vì vậy, tôi đã kết thúc việc viết giải pháp của riêng mình (nguồn mở và miễn phí).

iCanHazShortcut

Nó không thể làm gì nhiều ngay bây giờ, nhưng đó là một sự khởi đầu. Hãy đóng góp bằng cách thêm các yêu cầu tính năng và đề xuất.


1
Tôi đã cố gắng tìm một giải pháp dễ dàng cho vấn đề này trong vài giờ và ứng dụng của bạn là ứng dụng duy nhất hoạt động và thực hiện những gì nó phải làm mà không có tiếng chuông và còi phức tạp. Cảm ơn!
Stijn Martens

@StijnMartens bạn được chào đón! Đó là toàn bộ ý tưởng đằng sau nó - nếu bạn chỉ cần một phím tắt cho một lệnh, bạn sẽ có một phím tắt cho một lệnh. Không hơn không kém.
deseven

Điều này làm việc rất đẹp.
Brian Schermerhorn

2

Quicksilver có thể được sử dụng để liên kết các phím nóng với các hành động.

Nếu bạn thấy mình làm việc gì đó thường xuyên, bạn có thể tăng tốc nhiệm vụ hơn nữa bằng cách chỉ định một trình kích hoạt Bắt đầu với nó. Kích hoạt có thể được kích hoạt bằng phím tắt hoặc di chuyển chuột

Nếu đó là lệnh Unix hoặc shell script mà bạn muốn thực thi, bài đăng Stackoverflow này cung cấp thêm một số thông tin về việc sử dụng "mô-đun Terminal" của Quicksilver.


1

Tôi sẽ thêm câu trả lời của mình vào đây bằng BTT , vì nó dễ và thực sự có thể được liên kết trực tiếp với tập lệnh dòng lệnh:

  1. Chọn Bàn phím từ BTT

Chọn Bàn phím từ BTT

  1. Nhập phím tắt của bạn (hoặc chuỗi phím!)

Nhập phím tắt của bạn (hoặc chuỗi phím!)

  1. Chọn "Kích hoạt được xác định trước hành động" và nhập "shell" để tìm hành động.

Chọn "Kích hoạt được xác định trước hành động" và nhập "shell" để tìm hành động.

  1. Bạn có thể dán tập lệnh và shell mà bạn muốn chạy vào:

Bạn có thể dán tập lệnh và shell mà bạn muốn chạy vào:

Nhấp vào lưu và bạn đã hoàn tất! Bây giờ hãy kiểm tra tập lệnh của bạn với trình kích hoạt bàn phím bạn thiết lập.

  1. EXTRA: Bạn có thể muốn thêm ghi chú để nhớ phím tắt dành cho ...

Bạn có thể muốn thêm ghi chú để nhớ phím tắt dành cho ...


Cảm ơn bạn, cuối cùng tôi đã đi xuống tuyến đường này kể từ khi tôi có BTT.
Leo Ufimtsev

0

Có vẻ như điều này đã có sẵn trong 10.6, (xem http://hints.macworld.com/article.php?story=20090903085255430 ) nhưng một cái gì đó đã bị phá vỡ trong 10.7.2 (và có thể sớm hơn 10.7)

Tôi đã tìm thấy mặc dù phím tắt dịch vụ được vinh danh khi Tùy chọn hệ thống đứng đầu, nhưng không phải trong bất kỳ ứng dụng nào khác, kể cả Finder.

Tuy nhiên, đề xuất trước đó để sử dụng Spark hoạt động hoàn hảo trong sư tử, ngoại trừ việc tôi không thể sử dụng Ctrl trong phím tắt. (không phải là một showstopper!)


chỉ khi menu ứng dụng được tập trung. Nếu bạn nhấp vào máy tính để bàn và thử phím tắt thì nó không hoạt động. nhấp vào menu cho công cụ tìm và sau đó thử nó và nó hoạt động. Tôi có một dịch vụ dành cho Terminal có lối tắt và hiển thị trên tất cả các ứng dụng ... nhưng nó không hoạt động nếu tôi không ở trong một ứng dụng và thậm chí sau đó menu cần phải tập trung.
Marlon

@Lri ngay cả sau khi đăng xuất và đăng nhập lại, khởi động lại máy, v.v. Nó vẫn không hoạt động trừ khi tôi làm như tôi đã mô tả ở trên. Đặt nó trong Quicksilver hoạt động mặc dù. Tôi muốn biết làm thế nào mà QuickSilver có thể bắt được các phím tắt "toàn cầu" đó chứ không phải HĐH.
Marlon
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.