Como evitar a solicitação de senha quando eu “Coloco de volta” um arquivo da lixeira, via AppleScript?

0

Eu acidentalmente movi mais de 4.000 arquivos para a lixeira e quero mover os arquivos de volta para seus locais originais. Enquanto o Lion suporta este recurso (através do comando "Put Back" do Finder), ele só permitirá que você coloque de volta um arquivo de cada vez.

Eu encontrei um script AppleScript para automatizar o processo de colocar arquivos em um arquivo de cada vez. Eu corri o script durante a noite e isso funcionou principalmente, mas 1.700 arquivos permaneceram no meu lixo.

O problema é que os arquivos restantes exigem que eu digite uma senha antes que a Colocação possa ocorrer. Eu acredito que esses arquivos foram criados com um proprietário diferente.

Minha pergunta é como posso contornar isso?

Existe uma maneira de entrar em um modo de superusuário que me elimina de ter que digitar uma senha para cada arquivo que eu quero desfazer a exclusão?

Qualquer ajuda é muito apreciada.

Aqui está o AppleScript:

  repeat 4173 times --or as many files you have

          tell application "Finder" to open trash --open the trash folder

          tell application "Finder" to activate

          tell application "System Events"

                    tell process "Finder"

  delay 0.2 -- adjust delay as needed

  key code 125 --move down to get focus on a file

  key down command --hold command key

  delay 0.2 -- adjust delay as needed

  key code 51 --hit delete

  key up command --release command

                    end tell

          end tell

  delay 0.2 -- adjust delay as needed

          tell application "Finder" to close every window --close everything for the next cycle

end repeat
    
por computergeek 19.07.2012 / 19:16

1 resposta

1

Você também pode imitar a digitação da senha. A parte keystroke "password" & return deve ser inofensiva quando uma caixa de diálogo de senha não é mostrada. Eu só testei esse script com alguns arquivos, então talvez ainda precise ser modificado.

tell application "Finder"
    repeat 4 times
        close windows
        open trash
        activate
        tell application "System Events"
            key code 125
            key code 51 using command down
            delay 0.2
            keystroke "password" & return
            delay 0.2
        end tell
    end repeat
    close windows
end tell

Eu também tentei abrir o Finder como root com sudo /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder , mas as ações put back não parecem disponíveis para nenhum arquivo.

    
por 20.07.2012 / 18:35