1 votos

Apple Automator: ¿dónde guarda un nuevo nombre de archivo?

Tengo una línea de código (que puedo ejecutar con éxito en Terminal) que me gustaría incorporar en un flujo de trabajo de Automator, pero no puedo averiguar cómo hacer referencia al nombre de archivo. He configurado mi flujo de trabajo como una Acción de Carpeta y lo he aplicado a la carpeta correcta, por lo que arrastrar un nuevo archivo a esa carpeta activa el flujo de trabajo (esta parte funciona correctamente).

Mi línea de código es

sudo xattr -rd com.apple.quarantine [PATHNAME_TO_FILE]

Establece las preferencias en el archivo para obviar el proceso de cuarentena de Apple ejecutado por el programa Logic, permitiendo que un archivo de terceros pase la inspección.

¿Qué quiere que use Automator como [PATHNAME_TO_FILE]? He intentado "$@", "$#", "$0", "$1", "$2", etc., etc., pero no tuve suerte.

0voto

user3439894 Puntos 5883

Si ha configurado un Automator flujo de trabajo como una Acción de Carpeta y ha agregado una Acción de Ejecución de Shell acción, deberá configurar Shell: [/bin/bash] y Entrada de paso: [como argumentos] y utilizar el siguiente ejemplo de script de shell código:

for f in "$@"
do
    xattr -rd com.apple.quarantine "$f"
done

Nota: No debería necesitar usar sudo como ha mostrado en su publicación original.


Actualización para abordar comentario:

Si el objetivo de la carpeta vigilada es /Library/Audio/Plug-Ins/Components, como en la root del Macintosh HD, entonces necesitará tomar un enfoque diferente.

Configure un Automator flujo de trabajo como una Acción de Carpeta agregando una Acción de Ejecución de AppleScript, reemplazando el código predeterminado con el ejemplo de AppleScript código mostrado a continuación.

Probado en macOS Catalina 10.15.6, el Automator flujo de trabajo Acción de Carpeta, descrito inmediatamente arriba, funcionó para mí al agregar archivo(s)/carpeta(s) a /Library/Audio/Plug-Ins/Components, como en la root del Macintosh HD.

  • Nota: Al colocar manualmente archivo(s)/carpeta(s) en la carpeta vigilada y autenticar esa acción, luego se me pidió volver a ingresar mis credenciales para que el do shell script comando se ejecutara como si estuviera utilizando sudo en la línea de comandos en Terminal en el xattr comando.

Ejemplo de AppleScript código:

on run {input}
    set itemList to {}
    repeat with aItem in input
        set end of itemList to quoted form of (POSIX path of aItem) & space
    end repeat
    set shellCMD to "xattr -rd com.apple.quarantine " & itemList as string
    do shell script shellCMD with administrator privileges
end run

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X