Automator: servicio para enumerar las rutas de archivo de los elementos seleccionados, en el archivo de texto

2

¿Cómo se puede crear este servicio de Automator para Finder?

  • Me gustaría poder usar el menú contextual del Finder (haciendo clic con el botón derecho en un elemento del Finder) para ejecutar un Servicio que obtenga las rutas de los archivos seleccionados.
  • Las rutas deben ingresarse en un archivo de texto (que se puede guardar o guardar en la carpeta actual).

Además:

  • Yo actualmente sólo tienen que ser capaces de obtener los caminos de múltiples archivos seleccionados - pero no los caminos del contenido de las subcarpetas, etc. espero que sirva para no complicar las cosas.

  • Preferiría que los nombres de los archivos no tengan Escaping Spaces ( "Like\ This"), sino espacios normales, pero si hay una configuración para eso, me gustaría cambiar los modos dentro del script.

Banderas de invierno
fuente
44
Puede obtener los nombres de ruta en Finder después de seleccionar los elementos, hacer clic con el botón derecho y luego presionar la tecla de opción. Copiar n elementos cambia a: Copiar n elementos como nombres de ruta
usuario3439894
@ user3439894 Wow, no tenía idea, ¡gracias! Supongo que no puedo aceptarlo como respuesta, ya que es la respuesta correcta a la pregunta incorrecta. Pero esta es la solución que estaba buscando.
Winterflags

Respuestas:

2

Si está buscando algo que sea más "Automator puro", aquí hay una opción (aunque, como se mencionó en los comentarios, hacer clic derecho en los elementos en Finder, mantener optiony seleccionar Copy Items as Pathnameses probablemente la solución más fácil):

  • Acepta files or foldersenFinder
  • Establecer valor de variable Inputs
  • Ejecutar Shell Script: /usr/bin/dirname "$1"(asegúrese de pasar la entrada as arguments)
  • Establecer valor de variable Parent Folder
  • Obtener el valor de la variable Inputs<: esto no debe aceptar la entrada (haga clic con el botón derecho en la acción y seleccione Ignore Input)
  • Nuevo archivo de texto ( Plain text, [el nombre de archivo que desee], Parent Folder(arrastre esto desde la lista de variables))

He incluido una captura de pantalla a continuación:

Captura de pantalla del servicio

aaplmath
fuente
+1 Como el uso de Automator puro. Yo mismo no soy demasiado bueno en Automator puro
JBis
2

No se necesita script, ya que esto ya está integrado en Finder (esto funciona para uno o varios archivos):

  • Haga clic derecho en el archivo (s) en Finder

  • presione y mantenga option

  • Seleccione Copy [file name] as Pathname(o Copy [#] Items as Pathnamespara varios archivos) en el menú contextual

  • Los nombres de ruta ahora se guardan en su portapapeles. Puedes pegarlos en Notas o en un archivo de texto

Ruskes
fuente
2
Más un trabajo manual trivial que no necesita secuencias de comandos
fd0
-1 El OP es nuevo en Automator. Proporcionar una alternativa de secuencias de comandos les permitiría aprender. Esta solución, si bien es correcta, no responde la pregunta de los OP por completo.
JBis
1

Suponiendo que sepa cómo crear, guardar y usar un elemento del menú de servicio ...

! [ingrese la descripción de la imagen aquí

Guión

on run {input, parameters}
    set myExport to ""
    repeat with x in input
        set myExport to myExport & the POSIX path of x & return
    end repeat
    tell application "Finder" to set myPath to (POSIX path of (get (container of (first item of input)) as text))
    do shell script "echo " & the quoted form of myExport & " > " & the quoted form of (myPath & "/file_list.txt")
end run
JBis
fuente
@ user3439894 Finder envía los archivos a entrada
JBis
@ user3439894 Oh, ahora veo. Si eso es correcto.
JBis
1
Cambie la penúltima línea a tell application "Finder" to set myPath to (POSIX path of (get (container of (first item of input)) as text))y la última línea a do shell script "echo " & the quoted form of myExport & " > " & the quoted form of (myPath & "/file_list.txt")y funcionará si el primer elemento no es un directorio. NB: Probablemente haya una forma más limpia de lograr esto.
aaplmath
@ user3439894 no se puede arreglar ahora en el móvil se solucionará más tarde
JBis
@ user3439894 Solucionado :)
JBis