2 votos

¿Puede el servicio de automatización obtener la ruta de la carpeta principal?

Ya tengo un servicio que creará un enlace file:/// de red a un punto compartido a través de AFP pero me gustaría tener uno que haga la carpeta padre de un archivo.

Si hago clic con el botón derecho en un archivo me gustaría tener la opción de elegir copiar la ruta del archivo o la carpeta principal de los archivos.

Preferiría que el script estuviera en Shell / bash y no en AppleScript y mi escenario soñado sería una forma de copiar tanto la ruta del archivo como la carpeta padre de la ruta del archivo al portapapeles. Entonces, cuando pegué se vería así:

Ruta del archivo: file:///Volumen/carpeta padre/archivo.pdf Carpeta de los padres: file:///Volumen/carpeta de los padres

Preferiblemente me gustaría obtener cuatro líneas de texto en el portapapeles en una sola acción, pero la segunda parte (carpeta padre) es la que me falta actualmente.

0 votos

@bmike, no veo cómo has interpretado el OP hasta el punto de cambiar el último párrafo para incluir "Preferiblemente me gustaría obtener cuatro líneas de texto en el portapapeles en una sola acción" cuando lo que veo que se muestra es una línea de texto, es decir File Path: file:///Volume/parentfolder/file.pdf Parent Folder: file:///Volume/parentfolder Entonces, ¿me estoy perdiendo algo o has malinterpretado algo? Gracias.

0 votos

Sí. Puede que haya hecho una mala edición @user3439894 - ¿puedes arreglarlo?

2voto

user3439894 Puntos 5883

Crear un nuevo Servicio de automatización con la siguiente configuración:

  • El servicio recibe los [archivos o carpetas] seleccionados en el [Finder]

Añade un Ejecutar Shell script acción con la siguiente configuración:

  • Shell [/bin/bash]                 Pasar la entrada [como argumento]

La sustitución de todos los código por defecto con el código de ejemplo abajo:

toTheClipboard="File Path: file://$(sed 's: :%20:g' <<< "$1") Parent Folder: file://$(dirname "$1" | sed 's: :%20:g')"
pbcopy<<<"$toTheClipboard"

Salvar el Servicio de automatización , entonces en Buscador Seleccione un artículo y haga clic con el botón derecho del ratón seleccionando la opción servicio de la Servicios menú de contexto . El servicio también está disponible en la Buscador > Servicios menú.

A continuación, puedes pegar desde el portapapeles a donde quieras.


Nota: El código de ejemplo es sólo eso y no emplea ningún tratamiento de errores y sólo pretende mostrar una de las muchas formas de realizar una tarea. El usuario siempre tiene la responsabilidad de añadir/utilizar las herramientas adecuadas. tratamiento de errores según se necesite/se desee.

0 votos

Esto es perfecto, excepto que necesitaría que los espacios se sustituyeran por %20 para que se puedan enlazar correctamente. Voy a tratar de indagar un poco para ver si puedo resolverlo.

0 votos

Lo he intentado pero no he tenido éxito al intentar eliminar los espacios en el texto generado con %20. Agradecería mucho una actualización del código que has proporcionado sin los espacios. Muchas gracias.

0 votos

@Brave_Buffalo, lo he actualizado para sustituir los espacios por %20.

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