Vị trí dịch vụ được tạo trong Automator


19

Từ lâu tôi đã tạo ra một dịch vụ trong Automator, vẫn hoạt động. Nhưng tôi muốn thay đổi mã và nó không nằm trong / Thư viện / Dịch vụ / cũng không ~ / Thư viện / Dịch vụ / vì cả hai đều trống

Tôi đã mất mã nguồn hay tôi có thể khôi phục nó bằng cách khác?


1
Lạ ... ~/Library/Services/là vị trí mặc định cho các dịch vụ mới được tạo trong Automator và tôi chỉ xác nhận rằng bản thân mình bằng cách tạo một dịch vụ mới.
Austin

Câu trả lời:


19

Như những người khác đã nói, các dịch vụ thường nằm trong một trong các thư mục Thư viện / Dịch vụ (~ / Thư viện / Dịch vụ, / Thư viện / Dịch vụ và / Hệ thống / Thư viện / Dịch vụ). Nếu chỉ nhìn ở đó không bật lên, một tùy chọn khác là theo dõi những tập tin nào đang được mở khi bạn gọi dịch vụ, với nội dung như:

sudo opensnoop -n WorkflowService

... Và sau đó chạy dịch vụ, và xem qua các kết quả để xem liệu bạn có thể phát hiện ra tệp có liên quan hay không. Nếu đó không phải là dịch vụ dựa trên Máy tự động, bạn có thể phải rời khỏi -n WorkflowService(mặc dù bạn sẽ có nhiều tệp không liên quan hơn để sắp xếp vì bạn sẽ thấy mọi tệp trong toàn bộ HĐH mở ra).


sudo opensnoop -n WorkflowServicekhông thể hiện bất cứ điều gì cả và không thể có được bất kỳ hợp lý nào chỉsudo opensnoop
Tyilo

1
@Tyilo: Tôi khá chắc chắn điều đó có nghĩa là nó không thực sự là một dịch vụ dựa trên Automator. Có thể nó được cung cấp bởi một ứng dụng bạn đã cài đặt?
Gordon Davisson

Bạn đa đung! Tôi nghĩ rằng tôi đã tự làm nó ... Cảm ơn bạn rất nhiều!
Tyilo

1
Tôi đã đạt được 10 điểm kinh nghiệm và đạt +1 trước các quy trình lỗi đã họcopensnoop
BaseZen

10

Vị trí của các dịch vụ do người dùng tạo nằm dưới:

~/Library/Services/

(đã thử nghiệm Mac OS X Mountain Lion 10.8.4)

các vị trí khác bạn nhận được bằng cách nhập lệnh sau trong Terminal:

mdfind .workflow

vẫn như vậy vào ngày 10.9.5 và khi nghi ngờ thì mdfind làm điều đó.
Ruskes

Đây là nó cho tôi trên El Capitan. Lưu ý rằng đó /Users/<username>/Librarylà một thư mục ẩn và / hoặc hệ thống, vì vậy bạn sẽ cần kích hoạt các cài đặt thích hợp để hiển thị nó trong Finder.
Magnus W

2

Bạn đã thử ~/Library/Workflows/chưa


Không tồn tại hoặc cũng đã thử / Thư viện / Quy trình làm việc /
Tyilo

Đây chính xác là nơi tôi tìm thấy của tôi, các kịch bản tự động hóa được tạo trên Mavericks, nhưng hiện đang chạy Yosemite.
Duncan

1

Hãy thử tìm kiếm .workflowtrong Spotlight để tìm tất cả các tệp quy trình công việc trong thư mục người dùng của bạn. Dịch vụ sẽ được gọi Whatever the Service Name Is in the Services Menu.workflow.

Nếu bạn thích Terminal, lệnh này sẽ thực hiện tương tự, tìm kiếm thư mục hiện tại và tất cả các thư mục bên dưới nó:

find ./ -name "*.workflow"

EDIT: Đã sửa một lỗi nhỏ trong lệnh Terminal. Rõ ràng -type fkhông hoạt động trên .workflowcác tập tin.


Không có kết quả nào trong Spotlight và lệnh terminal không cho kết quả: 'tyilos-macbook: ~ Tyilo $ cd / tyilos-macbook: / Tyilo $ sudo find ./ -type f -name "* .workflow" Mật khẩu: find: .// dev / fd / 3: Không tìm thấy thư mục: .//dev/fd/4: Không phải là thư mục '
Tyilo

@Tyilo Xin lỗi, có một lỗi đánh máy trong lệnh Terminal mà tôi đã sửa. Hãy thử lại và nếu nó không tìm thấy gì trong thư mục chính của bạn ( ~), hãy thử chạy nó từ thư mục gốc của hệ thống (tức là nhập cd /trước khi chạy lệnh find). Điều này sẽ mất một thời gian, vì vậy hãy chuẩn bị để kiên nhẫn.
Austin

@Tyilo Và tất nhiên, bạn có thể tìm kiếm thư mục gốc trong GUI bằng cách mở Macintosh HDtrong Finder và nhập .workflowvào hộp tìm kiếm. (Kiểm tra File Nametùy chọn thay vì Contentstìm kiếm nhanh hơn.) Nhược điểm duy nhất của việc này là nó sẽ không tìm kiếm trong các thư mục hệ thống hoặc ẩn, nhưng dù sao bạn có thể sẽ không cần đến nó.
Austin

@Austin Tệp của tôi nằm giữa các tệp sử dụng cd /sudo find ./ -name "*.workflow" > ~/Desktop/services.txt. Tôi tìm thấy hai thư mục khác cũng có thể là một vị trí có thể, nhưng chúng không chứa tệp. Các địa điểm đã /Library/Application Support/Apple/Automator/Workflows//System/Library/Services/. Tôi đã tải tệp lên đây: cl.ly/6i1t
Tyilo

@Austin cũng đã thử sudo find ./ -name "*" > ~/Desktop/all.txtvà vẫn không có trận đấu
Tyilo

1

Chỉnh sửa để thêm

Các dịch vụ tự động chắc chắn sẽ được lưu trữ ~/Library/Services, dựa trên Google của tôi. Tôi vừa tạo một dịch vụ mới trong Automator và nó đã đặt nó ở đó.


Có lẽ ~/Library/Application Support/Automator/

Thay phiên, khi tôi thực hiện một dịch vụ lần cuối, tôi tin rằng tôi phải lưu dịch vụ đó .apptrước, vì vậy bạn có thể tìm kiếm ứng dụng.


Thư viện / Thư viện / Hỗ trợ ứng dụng / Máy tự động / thư mục không tồn tại, nhưng ~ / Thư viện / Hỗ trợ ứng dụng / Máy tự động / đã làm và trống rỗng -.- '
Tyilo

@Tyilo Xin lỗi, đó là những gì tôi muốn nói. Đã sửa câu trả lời của tôi, ngay cả khi nó sai. :)
Matthew Frederick

@Matthew Frederick Tìm thấy tất cả các tệp ứng dụng bằng lệnh @Austin và không ai trong số chúng khớp với tiêu đề dịch vụ của tôi
Tyilo

@Tyilo Tôi vừa kiểm tra hệ thống của mình và nhận ra rằng tôi đã tạo một ứng dụng AppleScript mà sau đó tôi đã sử dụng Automator để biến thành một dịch vụ, do đó, đề xuất .app của tôi. Kết quả là cả hai tập tin .app và .scpt tồn tại cho nó. Trừ khi bạn làm như vậy, đề nghị của tôi là không giúp đỡ.
Matthew Frederick

@Matthew Frederick Đừng có tệp .scpt của nó: s, nhưng tệp dịch vụ phải ở đâu đó, nếu không nó sẽ không hoạt động
Tyilo

1

Cách tốt nhất mà tôi biết để tìm quy trình công việc hoặc bất cứ điều gì khác là sử dụng ứng dụng: "EasyFind.app". Không giống như Finder và Spotlight và thậm chí là dòng lệnh Unix, EasyFind.app có thể được cấu hình để tìm kiếm ở mọi nơi và nó có khả năng khớp mẫu theo kiểu Unix. Ví dụ: "* .workflow" có thể được sử dụng để tìm bất kỳ Dịch vụ nào trên toàn bộ ổ đĩa cứng của bạn.

Tốt nhất trong tất cả EasyFind.app là miễn phí và hợp pháp.

EasyFind.app

Định cấu hình EasyFind.app để tìm bất kỳ quy trình làm việc Tự động hóa nào (bao gồm cả dịch vụ)

CÀI ĐẶT bằng cách sử dụng các chương trình bổ sung, bạn có thể chạy Terminal và nhập lệnh:

mdfind .workflow

Bạn có thể giải thích về nơi EasyFind có thể tìm thấy công cụ nhưng /usr/bin/findkhông?
nohillside

@patrix Tôi đã xem / usr / bin / tìm lại. Tôi tin rằng nó sẽ hoạt động, chỉ là EasyFind.app dễ sử dụng hơn.
Kaydell

1
@patrix: Lệnh sau hoạt động tốt với tôi: find ~ -name " .workflow" tốt hơn find ./ -name " .workflow" chỉ tìm kiếm thư mục hiện tại. Từ dòng lệnh, nó thực sự / usr / bin / xác định vị trí mà tôi không tin tưởng. Nó nhanh hơn, nhưng các tệp phải được lập chỉ mục trước khi chúng có thể được tìm thấy. Ngoài ra, tôi không tin tưởng Finder> Finder hay Spotlight để tìm mọi thứ vì chúng không mở gói ứng dụng hoặc thư mục ~ / Library không ẩn trong Mountain Lion. Vì vậy, / usr / bin / find là OK, đối với tôi, tôi vẫn thích EasyFind.app vì nó dễ sử dụng hơn.
Kaydell


0

Nếu Dịch vụ của luồng công việc được tạo bởi hệ thống, Nó sẽ nằm trong "/ Hệ thống / Thư viện / Dịch vụ".

Nhưng nếu bạn làm việc (dịch vụ) do chính bạn thêm vào từ Automator, nó sẽ nằm trong "/ Users / [tên người dùng của bạn] / Thư viện / Dịch vụ".


0

Đây là một thư mục ẩn : /Macintosh HD/Users/<username>/Library/Services. Cách tốt nhất để đến đó là tạo một dịch vụ mới trong thiết bị tự động và lưu nó và làm theo các bước dưới đây, hoặc nếu bạn đã tạo một dịch vụ thì hãy làm theo các bước sau:

  • Mở Tùy chọn hệ thống> Bàn phím và nhấp vào tab Phím tắt.
  • Tìm dịch vụ mà bạn đã tạo
  • Nhấp chuột phải vào dịch vụ và Mở trong Finder.

Nó sẽ tiết lộ thư mục ẩn.

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.