Cách đặt trình khởi chạy tùy chỉnh trong Dock (Mavericks)


14

Tôi chưa quen với Mac OS (hiện tôi đang sử dụng Mavericks) và tôi đã thực hiện các tìm kiếm trên google cũng như tìm kiếm trên StackExchange liên quan đến câu hỏi của tôi nhưng các cuộc thảo luận tôi gặp không hoàn toàn trả lời câu hỏi của tôi.

Tôi đến từ thế giới linux và việc đặt một lệnh tùy chỉnh trong bảng gnome và sau đó đưa vào bất kỳ đối số nào tôi thích là điều không quan trọng; nhiều lệnh trong số này gọi xterm.

Vì vậy, ví dụ, giả sử tôi muốn tạo một trình khởi chạy để kết nối với một máy chủ từ xa có nhiều đối số như dưới đây.

xterm -fg orange -bg black -e ssh me@myserver

Tôi xem qua một bài đăng đề nghị tôi sử dụng máy tự động. Tuy nhiên tôi không thể làm điều này thành công.

Cho đến nay trong máy tự động, tôi có

open -a "/opt/X11/bin/xterm" --args "-fg orange -bg black -e ssh me@myserver"

tuy nhiên lệnh này không thực thi đúng và tôi không chắc cách giải quyết vấn đề này.

Cảm ơn Les ps Lưu ý rằng nếu tôi khởi chạy Terminal và gõ xterm, nó sẽ khởi chạy như mong đợi


Tại sao không sử dụng thiết bị đầu cuối được xây dựng? Nó thực sự rất tùy biến và bạn có thể làm cho nó mô phỏng theo thuật ngữ x. Terminal mang đến rất nhiều lợi thế như chế độ toàn màn hình, sao chép / dán với + c+ v. Nó cũng cho phép bạn xây dựng các cấu hình tùy chỉnh của riêng mình, cho phép các phông chữ tùy chỉnh, độ trong suốt và thậm chí các lệnh mặc định được chạy khi bắt đầu (chẳng hạn như để bắt đầu một phiên SSH).
Alexander - Tái lập Monica

Câu trả lời:


16

Bạn có thể viết nó dưới dạng tập lệnh shell trong hành động Run Shell Script trong Automator:

Máy tự động

Lưu nó với loại Ứng dụng (thay vì Dòng công việc) và đặt nó vào thư mục Ứng dụng của bạn. Bây giờ nó có thể được đặt trong Dock.


2
Bất cứ ý tưởng làm thế nào tôi có thể thay đổi biểu tượng cho thực thi này?
Lee Sande

1
Bạn có thể thay đổi biểu tượng của bất kỳ khối lượng / thư mục / tệp nào bằng cách nhấn + ivà dán bất kỳ tệp hình ảnh nào vào hình ảnh ở góc trên cùng bên trái
Alexander - Phục hồi Monica

Cảm ơn bạn đã phản hồi. Tôi đã làm apple + i và sau đó tôi kéo và thả hình ảnh (một tệp png); tuy nhiên biểu tượng thay đổi thành biểu tượng loại mime tệp "PNG" chung không phải là hình ảnh thực tế. Tôi có cần phải có một định dạng tệp cụ thể cho các biểu tượng không? Tôi cũng làm theo các bước ở đây ( 365icon.com/icon-styles/dock-icons/how-to-change-mac-dock-icons ) nhưng ngay cả sau khi dán hình ảnh mới (sau khi chọn biểu tượng ở phía trên bên trái), hình ảnh mới không hiển thị (sau khi khởi động lại chương trình).
Lee Sande

2
Ooops, tôi nên đã làm rõ hơn: Bạn cần phải dán hình ảnh chính nó, không phải tập tin hình ảnh. Cách nhanh nhất tôi có thể nghĩ ra để làm điều này là nhấp đúp vào tệp hình ảnh (để mở tệp đó trong Preview.app), nhấn + a, sao chép vùng chọn và dán nó vào hình ảnh tốt
Alexander - Tái lập lại

1
Tôi không thể đánh giá vì tôi không đủ uy tín để làm như vậy. Lấy làm tiếc.
Lee Sande

2

AutomatorAppleScript là những cách tốt nhất để tạo tập lệnh / ứng dụng tùy chỉnh thực hiện các lệnh như bạn mô tả. Mỗi người có ưu và nhược điểm của họ. Đối với hầu hết các tác vụ tôi thích viết AppleScripts, có lẽ vì bản thân tôi là một lập trình viên và vì họ dễ dàng truy cập và chỉnh sửa.

Để viết AppleScripts, bạn có thể sử dụng chương trình do OS X cung cấp có tên là "AppleScript Editor". Trình chỉnh sửa AppleScript cho phép bạn viết AppleScripts của mình và lưu chúng dưới dạng AppleScript thực tế với phần mở rộng tệp là .scpt hoặc dưới dạng Ứng dụng (.app) có thể chạy từ bất cứ đâu.

Nếu bạn lưu AppleScript của mình ở định dạng AppleScript (.scpt) và với sự trợ giúp của ứng dụng có tên FastScripts (cũng có sẵn trong Mac App Store), tất cả các tập lệnh cá nhân và tập lệnh hệ thống của bạn có thể dễ dàng truy cập trong thanh thực đơn. Và Fast ScScript cung cấp thêm lợi ích của việc cho phép bạn gán phím tắt cho chúng. Bạn có thể làm tương tự với quy trình làm việc của Automator, tôi chỉ thấy dễ dàng hơn với AppleScripts và FastScripts.

Đây là một mẫu AppleScript mà tôi đã tạo mà tôi đã chia sẻ trước đây trên các bảng để tắt khả năng hiển thị của các tệp ẩn trong OS X. Đây là một trong những tập lệnh cơ bản hơn của tôi, đó là lý do tại sao tôi hiển thị nó như một ví dụ về việc nó đơn giản như thế nào để viết một AppleScript. Với sự trợ giúp của FastScripts, tôi đặt phím tắt ^+ + + .để kích hoạt tập lệnh này.

tell application "System Events"

    set hiddenFilesDisplayStatus to do shell script "defaults read com.apple.finder AppleShowAllFiles"
    set hiddenFilesNewDisplayStatus to "NO"

    if hiddenFilesDisplayStatus is "NO" then
        set hiddenFilesNewDisplayStatus to "YES"
    end if

    do shell script "defaults write com.apple.finder AppleShowAllFiles " & hiddenFilesNewDisplayStatus
    do shell script "killall Finder"

end tell

Tôi có nhiều loại AppleScripts khác thực hiện các tác vụ khác nhau, vì vậy nếu tôi là bạn, hãy nhìn vào AppleScripts trước, sau đó xem xét sử dụng Automator. Có rất nhiều tài nguyên ngoài kia để giúp bạn tạo AppleScripts và bạn sẽ thấy rằng có nhiều tài nguyên khác đã viết AppleScripts có thể đã làm những gì bạn đang tìm kiếm.

Để trả lời trường hợp sử dụng cụ thể của bạn

Hãy thử tạo một AppleScript bằng lệnh sau, chú ý đường dẫn đủ điều kiện đến xterm. Trên máy của tôi, nó khác với của bạn. Điều quan trọng cần lưu ý là tôi đã cài đặt XQuartz trên máy của mình vì Mavericks không được gửi cùng với X11 nữa.

do shell script "/usr/X11/bin/xterm -fg orange -bg black -e ssh me@myserver"

Tôi đã thử lệnh trên, chỉ vào máy chủ của tôi và nó hoạt động tốt. Điều tuyệt vời nếu bạn làm việc với AppleScript này là bạn thậm chí có thể thiết lập AppleScript để yêu cầu nhập tên người dùng và máy chủ mà bạn kết nối và nó sẽ đặt trong lệnh shell script cho bạn và nếu không có gì được cung cấp, bạn có thể đặt mặc định cho một tên người dùng / máy chủ cụ thể. :)

FYI, tôi đã tìm ra vấn đề đường dẫn đến xterm bằng cách sử dụng bài viết SO này: /programming/11206872/open-xterm-telnet-connection-mac-os-x


Cảm ơn bạn đã trả lời và liên kết đến vấn đề đường dẫn trong xterm.
Lee Sande
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.