Precisa de ajuda paira criair o Serviço Automator paira executair tairefas semelhantes a uma desinstallation residual

Eu tenho tido um problema com um programa que eu uso pesadamente todos os dias, onde ele age como se estivesse se recuperando de um acidente mesmo quando ele foi encerrado corretamente e todos os files foram salvos. O aplicativo é FontLab Studio, não que isso seja importante. O que acontece é que ele cairrega todos os files em que trabalhei recentemente, o que pode ser de várias dúzias, e mesmo que eu click todos eles, isso acontece várias vezes ao longo do dia. Ou, algo faz com que ele falhe quando eu estou saindo desses files paira que eu tenha que relançair e ele começa por completo.

O que fiz paira evitair isso, é executair o AppCleaner, o desinstalador gratuito e excluir tudo, mas o próprio aplicativo e as informações da licença. Isso funciona muito bem, mas dada a frequência que isso está tornando necessária, gostairia de criair algo que eu poderia acessair muito rápido, como um Applescript que eu poderia colocair no meu dock. Ou um service Automator localizado nos itens do menu contextual.

Eu não conheço nenhum Applescript, mas tentei fazer um stream de trabalho do Automator. O primeiro passo, "Obter Itens do Finder Selecionados". Um tem uma localization estática, o segundo pode mudair, não tenho certeza.

~/Librairy/Saved Application State/com.fontlab.studio5.savedState

/vair/db/BootCaches/34D6C504-2F5B-416F-9C91-0C9D019BF446/app.com.fontlab.studio5.playlist

O segundo passo no stream de trabalho é moview paira o lixo, e é aí que ele crash. Eu suspeito porque isso requer uma senha? Se possível, seria ótimo se eu pudesse inseri-lo uma vez e lembro, caso contrário, como eu precisairei dele paira me solicitair entrair na minha senha. Não conheço a melhor maneira de fazer nada disso.

Captura de tela

Acabei de ter outro pensamento, embora talvez não funcione, pois exigiria que o FontLab fosse aberto no momento, seria realizair isso com um script Python, porque o FontLab foi paircialmente criado em python e pode instalair scripts de terceiros. Estou aberto a qualquer ajuda que alguém possa oferecer.

Desde já, obrigado!

Eu não tenho o FontLab Studio instalado no entanto, com o objective de fornecer uma solução paira sua situação, no OS X El Capitan 10.11.5, fiz o seguinte:

  • Em um Terminal em /private/vair/db/BootCaches , usando sudo , mkdir e touch criei um diretório chamado 34D6C504-2F5B-416F-9C91-0C9D019BF446 e nesse diretório um file chamado app.com.fontlab.studio5.playlist .

  • No Finder, na pasta Biblioteca de Origem> Conta de Estado de Aplicativo Salvo, copiei uma pasta e renomeiei a cópia paira: "com.fontlab.studio5.savedState"

Ao fazê-lo, replicou os locais de destino e os files com os privilégios apropriados paira depois testair o seguinte aplicativo AppleScript.

No Script Editor eu usei o seguinte código paira criair o Reset FontLab Studio.app e salvou-o na pasta Aplicativos do Macintosh HD e, em seguida, airrastou-o paira o Dock paira que ele fique disponível paira clicair.


 try do shell script "rm -r \"$HOME/Librairy/Saved Application State/com.fontlab.studio5.savedState\" /private/vair/db/BootCaches/*/app.com.fontlab.studio5.playlist" with administrator privileges end try 

Quando eu clicair na telha do Dock do Reset FontLab Studio, mostrou a checkbox de dialog da senha, conforme mostrado abaixo, paira que eu digite minha senha. Digitei minha senha e pressione Enter. É isso mesmo, o aplicativo fez o que estava programado paira fazer.

Caixa de diálogo de senha


Notas:

  • À medida que este código é testado, sugiro copy e colá-lo como está no Editor de scripts e depois salvá-lo como uma aplicação de qualquer nome que você desejair.

  • $HOME está sendo usado porque ~ can / will, por vezes, erro em AppleScript e / ou Automator, dependendo de seu uso específico. Normalmente, ~ é expandido paira o valor da Vairiável de Ambiente de HOME e, portanto, eu costumo usair $HOME cima de ~ paira evitair erros que ele pode / irá gerair às vezes.

  • A substituição de * por 34D6C504-2F5B-416F-9C91-0C9D019BF446 é intensional, de modo a acomodair a possível mudança de nome.

  • O command try é usado paira evitair um erro se você executair o aplicativo Reset FontLab Studio novamente antes que os files de destino sejam recriados e se um ou outro não existir, ele ainda exclui o outro.

  • /vair é um link simbólico paira /private/vair no entanto, eu prefiro usair o path absoluto sobre o link simbólico em casos como este.

  • O uso do command rm é intrinsecamente perigoso, especialmente quando usado com privilégios elevados e / ou curingas, então, paira esse fim, certifique-se de que não há erros de digitação em sua linha de command e que os destinos sejam os alvos pretendidos. É por isso que testei meu código antes de publicá-lo. Você também pode anunciair o command rm com echo , por exemplo, echo rm ... e, em seguida, revise a saída no painel Eventos / Resultados do Editor de Script e, em seguida, remova o echo antes de save o script.


A image abaixo paira mostrair o destaque sintáctico e paira view a linha de command completa do command do shell script

Janela do editor de scripts


Se você é o único user do computador e não gosta de digitair sua senha quando o aplicativo Reset FontLab Studio é executado, modifique o command do do shell script usando a seguinte syntax:

 do shell script "command" user name "me" password "mypassword" with administrator privileges 

Exemplo:

 do shell script "rm -r \"$HOME/Librairy/Saved Application State/com.fontlab.studio5.savedState\" /private/vair/db/BootCaches/*/app.com.fontlab.studio5.playlist" user name "me" password "mypassword" with administrator privileges 

Observe que, quando o código do script é salvo, o valor do user name do user name e da password são salvos em text legível dentro do file binary "main.script" do package de aplicativos. Então use esse método por sua conta e risco, pois é considerado um risco de security airmazenando nomes de users e passwords que são airmazenados de forma não criptografada.