Localização dos serviços criados no Automator


19

Há muito tempo, criei um serviço no Automator, que ainda funciona. Mas eu quero alterar o código e ele não está localizado em / Library / Services / nem ~ / Library / Services /, pois ambos estão vazios

Perdi o código fonte ou posso restaurá-lo de outra forma?


11
Estranho ... ~/Library/Services/é o local padrão para novos serviços criados no Automator, e acabei de confirmar isso criando um novo serviço.
— Austin

Respostas:


19

Como já foi dito, os serviços normalmente estão em uma das pastas Biblioteca / Serviços (~ / Biblioteca / Serviços, / Biblioteca / Serviços e / Sistema / Biblioteca / Serviços). Se apenas olhar para lá não aparecer, outra opção é espionar quais arquivos estão sendo abertos quando você invoca o serviço, com algo como:

sudo opensnoop -n WorkflowService

... e, em seguida, executando o serviço e examinando os resultados para ver se você consegue identificar o arquivo relevante. Se não for um serviço baseado no Automator, talvez você precise deixar o arquivo -n WorkflowService(embora você tenha muito mais arquivos irrelevantes para classificar, porque verá todos os arquivos que qualquer coisa no SO inteiro abrir).


sudo opensnoop -n WorkflowServicenão mostraram nada e não poderia ficar fora razoável de apenassudo opensnoop
— Tyilo

11
@ Tyilo: Eu tenho certeza que isso significa que não é realmente um serviço baseado no Automator. Pode ser fornecido por um aplicativo que você instalou?
— Gordon Davisson

Você estava certo! Eu pensei que eu mesmo fiz ... Muito obrigado!
— Tyilo 14/05

11
Eu ganhei 10 pontos de experiência e atingiu um contra processos de buggy ter aprendido agoraopensnoop
— BaseZen

10

A localização dos serviços criados pelo usuário está em:

~/Library/Services/

(Mac OS X Mountain Lion 10.8.4 testado)

Em outros locais, digite o seguinte comando no Terminal:

mdfind .workflow

continua o mesmo em 10.9.5 e quando em dúvida o mdfind faz isso.
— Ruskes

Foi isso para mim no El Capitan. Observe que /Users/<username>/Libraryé um diretório oculto e / ou do sistema, portanto, você precisará ativar as configurações adequadas para exibi-lo no Finder.
— Magnus W

2

Você tentou ~/Library/Workflows/?


Também não existe e também tentou / Library / Workflows /
— Tyilo

Foi exatamente aqui que encontrei os meus scripts de automação criados no Mavericks, mas executando o Yosemite agora.
— Duncan

1

Tente pesquisar .workflowno Spotlight para encontrar todos os arquivos de fluxo de trabalho na sua pasta de usuário. O serviço será chamado Whatever the Service Name Is in the Services Menu.workflow.

Se você preferir o Terminal, este comando fará o mesmo, pesquisando o diretório atual e todas as pastas abaixo dele:

find ./ -name "*.workflow"

EDIT: Corrigido um pequeno erro no comando Terminal. Aparentemente -type f, não funciona em .workflowarquivos.


Nenhum resultado no Spotlight e o comando terminal não mostraram resultados: 'tyilos-macbook: ~ Tyilo $ cd / tyilos-macbook: / Tyilo $ sudo find ./ -type f -name "* .workflow" Senha: find: .// dev / fd / 3: Não é um achado diretório: .//dev/fd/4: Não é um diretório'
— Tyilo

@ Tyilo Desculpe, houve um erro de digitação no comando Terminal que eu corrigi. Tente novamente e, se não encontrar nada no diretório inicial ( ~), tente executá-lo no diretório raiz do sistema (por exemplo, digite cd /antes de executar o comando find). Isso vai demorar um pouco, então esteja preparado para ser paciente.
— Austin

@Tyilo E, é claro, você pode pesquisar a pasta raiz na GUI abrindo Macintosh HDno Finder e digitando .workflowna caixa de pesquisa. (Marque a File Nameopção em vez de fazer Contentsuma pesquisa mais rápida.) A única desvantagem disso é que ela não pesquisará em pastas ocultas ou do sistema, mas você provavelmente não precisará disso.
— Austin

@ Austin Meu arquivo não estava entre os arquivos usando cd /e sudo find ./ -name "*.workflow" > ~/Desktop/services.txt. Encontrei duas outras pastas que também poderiam ser um local possível, mas não continham o arquivo. Os locais eram /Library/Application Support/Apple/Automator/Workflows/e /System/Library/Services/. Fiz upload do arquivo aqui: cl.ly/6i1t
— Tyilo 13/05

@Austin também tentou com sudo find ./ -name "*" > ~/Desktop/all.txte ainda não é páreo
— Tyilo 13/05

1

Editado para adicionar

Definitivamente, os serviços de automação devem ser armazenados ~/Library/Services, com base no meu Google. Acabei de criar um novo serviço no Automator e ele foi colocado lá.


Possivelmente ~/Library/Application Support/Automator/

Como alternativa, quando eu fiz um serviço pela última vez, acredito que precisei salvá-lo como um .appprimeiro, para que você possa procurar aplicativos.


A pasta / Library / Application Support / Automator / não existia, mas ~ / Library / Application Support / Automator / existia e estava vazia -.- '
— Tyilo

@ Tyilo Desculpe, foi isso que eu quis dizer. Corrigida minha resposta, mesmo que esteja errada. :)
— Matthew Frederick

@Matthew Frederick Encontrado todos os arquivos de aplicativos usando o comando @Austin, e nenhum deles correspondeu meu título serviço
— Tyilo

@ Tyilo Acabei de verificar meu sistema e percebi que havia criado um aplicativo AppleScript que, em seguida, usei o Automator para se transformar em um serviço, daí a minha sugestão .app. Como resultado, os arquivos .app e .scpt existiam para ele. A menos que você tenha feito o mesmo, minha sugestão não ajuda.
— Matthew Frederick

@Matthew Frederick não tem o arquivo .scpt de: s, mas o arquivo de serviço coisinha deve estar em algum lugar, então ele não iria funcionar
— Tyilo

1

A melhor maneira que eu conheço para encontrar fluxos de trabalho ou qualquer outra coisa é usar o aplicativo: "EasyFind.app". Diferentemente do Finder, do Spotlight e até da linha de comando do Unix, o EasyFind.app pode ser configurado para pesquisar em qualquer lugar e possui um recurso de correspondência de padrões no estilo Unix. Por exemplo, "* .workflow" pode ser usado para encontrar qualquer serviço em todo o seu disco rígido.

O melhor de tudo EasyFind.app é gratuito e legal.

EasyFind.app

Configurando o EasyFind.app para localizar qualquer fluxo de trabalho do Automator (incluindo serviços)

Em vez de usar programas extras, você pode executar o seu Terminal e inserir o comando:

mdfind .workflow

Você pode explicar onde o EasyFind consegue encontrar coisas, mas /usr/bin/findnão consegue?
— nohillside

@patrix Estive olhando em / usr / bin / find novamente. Acredito que funcionará, mas EasyFind.app é mais fácil de usar.
— Kaydell

11
@patrix: O comando a seguir funciona bem para mim: encontre ~ -name " .workflow" melhor que find ./ -name " .workflow", que apenas pesquisa o diretório atual. Na linha de comando, é realmente / usr / bin / localizar que eu não confio. É mais rápido, mas os arquivos precisam ser indexados antes de serem encontrados. Além disso, não confio no Finder> Finder nem no Spotlight para encontrar tudo, porque eles não abrem pacotes de aplicativos ou a pasta ~ / Library que não é invisível no Mountain Lion. Portanto, / usr / bin / find está OK, é apenas isso para mim, ainda prefiro o EasyFind.app porque é mais fácil de usar.
— Kaydell


0

Se os Serviços do fluxo de trabalho forem gerados pelo sistema, ele estará localizado em "/ Sistema / Biblioteca / Serviços".

Mas se o fluxo de trabalho (serviços) adicionado por você pelo Automator, ele estará localizado em "/ Usuários / [seu nome de usuário] / Biblioteca / Serviços".


0

É uma pasta oculta: /Macintosh HD/Users/<username>/Library/Services. A melhor maneira de chegar lá é criar um novo serviço no automator, salvá-lo e seguir as etapas abaixo, ou se você já tiver criado, siga estas etapas:

  • Abra Preferências do Sistema> Teclado e clique na guia Atalho.
  • Encontre o serviço que você criou
  • Clique com o botão direito do mouse no serviço e abra no Finder.

Ele irá revelar a pasta oculta.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.