6 votos

Pide texto, pase a la terminal, en Automator

Estoy tratando de crear un simple Automator servicio para cambiar rápidamente los metadatos de las fotos. Me gustaría ser capaz de seleccionar la cantidad x de los archivos, ejecute el servicio, y aparece una ventana que pide el número f quiero cambiar a:

En el momento en que este se configura para agarrar los archivos seleccionados en el finder, y ejecute el siguiente comando de terminal:

exiftool -FNumber="1.8" -overwrite_original_in_place "$@"

(exiftool nosotros, una aplicación para editar metadatos)

Este comando funciona, pero el FNumber está codificado a 1.8. Me gustaría ser capaz de forma dinámica especificar el número f a través de la "Pedir texto" de comandos. Sin embargo, no sé cómo puedo pedir texto y el uso de los archivos seleccionados como entradas al mismo tiempo. ¿Anyo

2voto

Malik hassan Puntos 16

Oh, bueno, yo estaba trabajando en hacer lo mismo que @Daniel.

Pero yo estaba tratando de pasar el exiftool comando una vez. Así que ahora usted tiene una opción :-).

  property ExifTool : "PathTo/exiftool -FNumber="
property ExifToolOption : "-FNumber="
on run {input, parameters}
    set pathList to ""
    repeat with i from 1 to count of items of input
        set this_item to item i of input
        set pathList to pathList & space & "\"" & (POSIX path of this_item) & "\"" as string

    end repeat
    display dialog "Enter FNumber" default answer "" buttons {"Cancel", "OK"} default button 2
    set fStop to text returned of the result
    set fStop to fStop as number
    do shell script ExifTool & space & ExifToolOption & fStop & space & "-overwrite_original_in_place" & space & pathList
end run

1voto

TraFoO Puntos 11

Si usted no está particularmente obligado a la utilización de Automator "pregunta para el texto" el comando, usted podría hacer esto:

En su servicio, tiene el elemento de acción se "Ejecutar AppleScript" en lugar de "Ejecutar el Shell Script"

El uso de este AppleScript:

on run {input, parameters}
    set myvar to text returned of (display dialog "What F-stop do you want to set?" default answer "1.8")
    repeat with myitem in input
        set myscript to "exiftool -FNumber=\"" & myvar & "\" -overwrite_original_in_place \"" & (POSIX path of myitem) & "\""
        do shell script myscript
    end repeat
end run

enter image description here

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