¿Cómo puedo copiar en el portapapeles la ruta (o la URL completa) de un archivo o una carpeta? [duplicar]

11

Es muy molesto tener que abrir siempre la Information about...ventana para obtener la ruta de una carpeta o un archivo.

¿Hay algo así como un menú contextual para obtener urlla ruta de cualquier archivo o carpeta?

Colas
fuente
cmd + I? ¿O que el buscador muestre la barra de ruta del archivo? ¿O haciendo clic derecho en el icono del archivo en la ventana del Finder?
Andrew U.
2
seleccione el archivo y luego haga clic mientras mantiene presionada la tecla alt (opción): vea "copiar <nombre>" como nombre de ruta.
LexS

Respuestas:

9

Esto es algo fácil.

Seleccione el archivo y luego Command-Ccolocará la ruta al archivo en el portapapeles. Si luego pega en la Terminal, obtendrá la ruta completa, desafortunadamente la mayoría de las otras aplicaciones solo obtendrá el nombre de archivo.


Si desea la ruta completa, puede crear un Servicio Automator para hacerlo fácilmente:

ingrese la descripción de la imagen aquí

Cree un nuevo servicio de Automator y cambie el ' Servicio recibido Seleccionado ' a: Archivos o carpetas Y en la aplicación Finder .

Agregue una acción Copiar al portapapeles y guarde el servicio.

Ahora puede seleccionar un archivo, hacer clic con el botón derecho para obtener un menú contextual y seleccionar su servicio en el submenú Servicio.

La ruta estará en el portapapeles lista para que la pegues. Incluso puede configurar un atajo de teclado para ello si lo desea.

Originalmente utilicé una acción Ejecutar Applescript para obtener la ruta de Posix al archivo y pasarla a la acción Copiar al portapapeles .

Pero descubrí que todo lo que necesita es que la selección pase directamente a la acción Copiar al portapapeles .

Esto mejoró en el Applescript porque el Applescript solo podía tratar con un elemento seleccionado como escrito.

Pero ahora puede seleccionar varios archivos y obtener múltiples rutas en el portapapeles sin escribir ningún código.

Tony Williams
fuente
2
Para usar la ruta en la Terminal es más fácil si simplemente arrastra el archivo / carpeta a la ventana de la Terminal.
Thecafremo
@TonyWilliams, buen lugar en el único uso de la acción Copiar al portapapeles. Me gustaría votar su respuesta, pero primero, ¿puedo sugerirle que edite su respuesta para reflejarlo? El AppleScript que utilice se romperá si se selecciona más de un elemento. Y su descubrimiento cubre tanto opciones simples como múltiples.
markhunte
@markhunte Lamentablemente, estoy trabajando sin una Mac durante las próximas ocho horas para poner una nueva captura de pantalla. Podría hacerlo en el almuerzo :) de lo contrario es cuando llegue a casa esta noche.
Tony Williams
@TonyWilliams, ordenados.
markhunte
@markhunte Gracias. Estaba a punto de ir a "arreglar" una computadora en la Oficina de Estudiantes para poder tener 15 minutos en una Mac.
Tony Williams
11

En OS X "El Capitan",

Option+ Command+ Cel archivo / carpeta seleccionado

O

  1. option haga clic derecho en el archivo / carpeta (en Finder)

  2. Seleccione ' Copiar "archivo / carpeta" como Ruta '.

Copie "archivo / carpeta" como nombre de ruta

Copiar ruta de archivo en Finder

Ahora tiene la opción de copiar la ruta a un archivo sin copiar el archivo en sí, perfecto para trabajar con archivos almacenados en un servidor. Para copiar la ruta del archivo, haga clic con el botón derecho en el archivo en el Finder y luego mantenga presionada la tecla Opción y elija Copiar como nombre de ruta.

(De Apple) http://www.apple.com/osx/all-features/#other-features

Ivan Chau
fuente
Tenía un servicio para esto, pero tenía errores. +1 por mencionar El Capitán agregó esto; no sabía
Yatharth Agarwal
1

Puede asignar un acceso directo a un script como este:

tell application "Finder" to set s to selection as alias list
if s is {} then return
set out to ""
repeat with f in s
    set out to out & POSIX path of f & linefeed
end repeat
set the clipboard to out

Hubo un error en 10.7 y 10.8 que dificultaba obtener la selectionpropiedad de manera confiable, pero se corrigió en 10.9. (Finder ignoró las ventanas que se crearon después de la última vez que el foco se movió a otra aplicación y viceversa). Si usa 10.7 o 10.8, agregue estas líneas al comienzo del script:

activate application "SystemUIServer"
activate application "Finder"
Lri
fuente