Existe uma maneira de verificar se há alterações em uma pasta / arquivo (inclui adicionar arquivos, excluir arquivos, alterações em arquivos, ...). A 'Ação da pasta' no Automator está apenas verificando se algum arquivo foi adicionado recentemente.
9
Respostas:
Você pode adicionar uma ação "Executar script do shell" com o comando:
Isso fornecerá todos os arquivos e diretórios
<directory>
que foram alterados desde a última alteração de<reference_file>
. Apenas certifique-se de modificar<reference_file>
cada vez que executar o script do Automator.Consulte também a página do manual de localização (entre
man find
no terminal) para obter mais opções. A localização é muito poderosa, e refinar ainda mais sua pesquisa geralmente é uma questão de algumas opções adicionais. Por exemplo, para procurar apenas diretórios modificados após<reference_file>
:Se a versão que acompanha o OSX não for suficiente, você também pode tentar a versão que vem
findutils
(brew, macports etc.), que deve ter um pouco mais de recursos.fonte
Não sei como fazer isso com o Automator, mas há um aplicativo na App Store chamado Folder Watch que pode fazer o que você está pedindo.
fonte
Então, da última vez que verifiquei, o Automater está usando o Applescript em segundo plano para criar scripts para suas ações. O Applescript não tem muita profundidade. Embora ele possa obter a lista de arquivos em um diretório (e, portanto, você possa descobrir quando algo é excluído), não acredito que possa calcular alterações em um arquivo.
O que você realmente precisa aproveitar são as notificações do sistema de arquivos. E como isso é uma besta, eu aceitaria o conselho do kraymer e usaria o launchd. Possui ganchos para executar sempre que o conteúdo de uma pasta é alterado. O Lingon (veja também sua página desatualizada do SourceForge ) é um ótimo aplicativo para ajudar as pessoas a entrar no launchd. Você pode escrever seu script / aplicativo de automação para fazer o que planejava quando seu diretório foi modificado e apenas fazer com que a tarefa launchd chame isso.
fonte
Você pode verificar uma resposta minha , mas parece que você quer
O Launchd não é o caminho a seguir para alterações de arquivos, fs_usage usa a máquina subjacente que potencializa o foco.
Edição: Estou totalmente errado aqui. O Launchd possui exatamente essa funcionalidade necessária, ou seja: faça algo em uma alteração de arquivo ou diretório.
Você cria um arquivo .plist.
Grite "XML SUX PARA ARQUIVOS CONF!" (Realmente faz.)
e você deseja usar uma ou ambas as teclas abaixo em seu trabalho de inicialização.
fonte