A ação "Filter Finder Items" do Automator está quebrada?

1

Estou tentando criar um droplet do Automator que remova arquivos de uma determinada extensão de um diretório. Meu fluxo de trabalho tem 3 ações (quando não estou depurando):

  1. Obter o conteúdo da pasta (Repetindo para cada subpasta)
  2. Filtrar itens do localizador (a extensão do arquivo é "parte")
  3. Mover itens do Finder para a lixeira

É # 2 que parece estar me dando problemas. Não importa o que eu faça, nenhum arquivo jamais passa pelo filtro. Quando eu expandir os resultados para obter o conteúdo da pasta e quaisquer outras ações do Finder, sempre vejo arquivos nos resultados. Mas mesmo quando eu especifico os filtros mais permissivos, essa ação nunca produz nada.

Se você deseja depurar isso, basta inserir uma nova ação no topo: Obter Itens do Finder Especificados, soltando em qualquer diretório que tenha algum arquivo dentro dele - embora tecnicamente os "Itens do Finder de Filtros" também possam retornar pastas.

Atualizar

Agora estou no Lion e vendo exatamente o mesmo comportamento. Também tentei substituir os critérios do passo 2 por "Nome termina com 'parte'", mas isso também não fez diferença. Eu finalmente acabei escrevendo um AppleScript que realizou a mesma tarefa (veja abaixo).

    
por Dov 05.11.2010 / 00:34

3 respostas

1

verifique suas preferências de privacidade do Spotlight. Se a pasta com a qual você está trabalhando não estiver sendo indexada pelo Spotlight, o comando de filtro não encontrará nada.

    
por 10.11.2011 / 09:09
0

Parece que os arquivos recém-adicionados a uma pasta (como no início do fluxo de trabalho) parecem estar ausentes dos resultados. Por exemplo, veja minha imagem anexada do meu fluxo de trabalho (o primeiro é apenas um conteúdo da pasta get).

    
por 29.09.2011 / 15:50
0

Eu escrevi um AppleScript para realizar a mesma tarefa, mas não aceito essa resposta, pois ainda acho que algo está errado com o Automator (ou não estou entendendo algo fundamental sobre isso). Este é o AppleScript para um droplet que aceita uma ou mais pastas e remove todos os arquivos que terminam em .part e vem funcionando perfeitamente há meses, agora (no Snow Leopard e no Lion).

on open theItems

    repeat with theItem in theItems
        set theInfo to info for theItem

        --Verify dropped items are folders
        if not folder of theInfo then
            my warnUser(theInfo's name)
        else
            --Empty out the .part files
            my removePartFiles(theItem)
        end if
    end repeat
end open

on run
    my warnUser(missing value)
    -- Used for debugging
    --my removePartFiles("Macintosh HD:Users:Username:Some Test Folder:" as alias)
end run

-- Calls itself recursively
on removePartFiles(RootDirectory)
    tell application "Finder"
        delete (every file of RootDirectory whose name ends with ".part")

        set subFolders to folders of RootDirectory
        repeat with eachFolder in subFolders
            my removePartFiles(eachFolder)
        end repeat
    end tell
end removePartFiles

on warnUser(itemName)
    set msg to "Please drop folder(s) onto me"
    if itemName is not missing value then set msg to "'" & itemName & "' is not a folder"

    display alert msg as warning buttons {"OK"} default button "OK"
end warnUser
    
por 30.09.2011 / 14:33