Question

Long-time ago i created a service in Automator, which still works. But i want to change the code and it isn't located in either /Library/Services/ nor ~/Library/Services/ as they are both empty

Have i lost the source code or can i restore it otherwise?

Was it helpful?

Solution

As others have said, services are normally in one of the Library/Services folders (~/Library/Services, /Library/Services, and /System/Library/Services). If just looking there doesn't turn it up, another option is to spy on what files are being opened when you invoke the service, with something like:

sudo opensnoop -n WorkflowService

... and then running the service, and looking through the results to see if you can spot the relevant file. If it isn't an Automator-based service, you might have to leave off the -n WorkflowService (although you'll have a lot more irrelevant files to sort through because you'll be seeing every file anything in the entire OS opens).

OTHER TIPS

The location of the user created services is under:

~/Library/Services/

(tested Mac OS X Mountain Lion 10.8.4)

other locations you get by entering following command in Terminal:

mdfind .workflow

Did you try ~/Library/Workflows/?

Try searching for .workflow in Spotlight to find all workflow files in your user folder. The service will be called Whatever the Service Name Is in the Services Menu.workflow.

If you prefer the Terminal, this command will do the same thing, searching the current directory and all the folders underneath it:

find ./ -name "*.workflow"

EDIT: Corrected a small mistake in the Terminal command. Apparently -type f doesn't work on .workflow files.

Edited to add

Automator services are definitely supposed to be stored in ~/Library/Services, based on my Googling. I just created a new service in Automator and it placed it there.


Perhaps ~/Library/Application Support/Automator/

Alternately, when I last made a service I believe that I had to save it as an .app first, so you might search for apps.

The best way that I know to find workflows or anything else is to use the app: "EasyFind.app". Unlike the Finder and Spotlight and even the Unix command-line, EasyFind.app can be configured to search everywhere, and it has a Unix-style pattern-matching capability. For example "*.workflow" can be used to find any Service on your entire hard-drive.

Best of all EasyFind.app is free and legal.

EasyFind.app

Configuring EasyFind.app to find any Automator workflow (including services)

INSTEAD of using extra programs you can run your Terminal and enter command:

mdfind .workflow

I had the same problem.

I found following ~/Library/Services/ does exist, on my 10.8 OSX.
But I can not see it with Finder, only from Terminal.

I aslo find this:
http://www.macworld.com/article/1161156/view_library_folder_in_lion.html
That explain it little better.

If the Services of workflow is generated by system, It will located in "/System/Library/Services".

But if you workflow(services) added by yourself from Automator, it will located in "/Users/[your username]/Library/Services".

It is a hidden folder:/Macintosh HD/Users/<username>/Library/Services. The best way to get there is either create a new service in automator and save it and follow steps below, or if you have one created already follow these steps:

  • Open System Preferences > Keyboard and click the Shortcut tab.
  • Find the service that you created
  • Right click on the service and Open in Finder.

It will reveal the hidden folder.

Licensed under: CC-BY-SA with attribution
Not affiliated with apple.stackexchange
scroll top