Copiar la ruta del directorio actual al portapapeles

¿Cuál es una forma rápida de copiar la ruta al directorio que está actualmente abierto en Finder?

Copiar esa ruta es muy fácil en los administradores de archivos de Linux y Windows: solo necesita copiarla desde la barra de direcciones. No veo una opción correspondiente en Finder.

@AdamEberbach No estoy de acuerdo, la pregunta que vinculó es sobre cómo iniciar una instancia de Terminal en la ruta actual del Finder, se trata simplemente de obtener la ruta
¿Puedes explicar a qué te refieres con copiar la ruta? ¿Lo quieres en el portapapeles en forma expandida /Volumes/whatever/path/to/frontmost/window/viewo algo más? Básicamente, ¿cuál es el siguiente paso que vas a realizar con el camino una vez que lo tengas?
@bmike: Sí, tu ejemplo es correcto. El siguiente paso podría ser cualquier cosa que requiera que vuelva a acceder a la ruta de esa carpeta, ya sea inmediatamente o en el futuro. Es posible que desee almacenar esa ruta en un documento para referencia futura, o ejecutar algunos comandos en el terminal que usan esa carpeta, etc. En Windows y Linux, a menudo lo uso para navegar en una nueva ventana del administrador de archivos pegando la ruta, pero Dudo que funcione en OS X.
Dice en la pregunta "Me gustaría una forma de línea de comandos para determinar el directorio de trabajo de la ventana "actual" del Finder". - ¿No estás pidiendo obtener la ruta de la ventana actual del Finder en la terminal, Hippo?
@Adam: No exactamente. Estoy buscando un método rápido, similar a los que estoy acostumbrado en Windows y Linux (es decir, presionando un par de teclas o haciendo clic y presionando una tecla o dos).
Gracias por las excelentes respuestas hasta ahora. Los probaré en los próximos días y aceptaré el que funcione mejor para mí o el que elija la comunidad. ¡Sigan recibiendo sus respuestas!
@TimothyMueller-Harder: Aunque esa pregunta es similar, hay una diferencia entre obtener la ruta de un archivo o carpeta en el Finder y obtener la ruta de la ventana activa, especialmente si algo ya está seleccionado en esa ventana.
¿Qué vas a hacer con la ruta en el portapapeles después?
@patrix ¿Es realmente asunto nuestro?
Dependiendo de lo que intente lograr, puede haber mejores soluciones que Cortar y pegar. Por ejemplo, si necesita la ruta en la Terminal, simplemente puede arrastrar y soltar el archivo/carpeta en la ventana de la Terminal (sin necesidad de cortar y pegar).
@BlankMan Aquí está la respuesta a su segunda pregunta apple.stackexchange.com/questions/40194/…
¿Podría marcar la respuesta apple.stackexchange.com/a/223155/5112 de @shahid610169 como la respuesta aceptada? AIT

Respuestas (17)

Option+ Command+C

Copiará la ruta de la carpeta o el archivo seleccionado en el portapapeles. Probado en El Capitán.

Gracias, esta es la respuesta exacta que quería escuchar.
para mí, está abriendo el menú "fragmentos" ... no estoy seguro si es alguna utilidad que agregué o parte del sistema operativo :(
También funciona para mí en macOS Montery

Junto al nombre de la carpeta en el Finder hay un icono que representa esa carpeta. Este ícono se puede arrastrar a cualquier lugar donde necesite aceptar una ruta: al arrastrarlo a la Terminal o TextEdit en modo de texto sin formato, la ruta se colocará como texto en la ventana o el documento. Sin embargo, esto no funciona con todos los destinos: copiar a un documento TextEdit de texto enriquecido, por ejemplo, copia un enlace a la carpeta y no a la ruta.

Hay algunas aplicaciones de terceros , algunas gratuitas, otras de pago, que añaden esta funcionalidad. También puede crear un servicio con Automator ( o AppleScript ) para hacerlo, pero un método simple y gratuito que me gusta, especialmente si le gusta usar la terminal de todos modos, es invocar DTerm en la ventana del Finder y ejecutar:

pwd | pbcopy

Eso copiará la ruta actual al portapapeles de Mac OS X.

Oh, gran uso de DTerm. Nunca dediqué suficiente tiempo a aprender que es el verdadero poder, pero más personas que conozco confían en él que en él.
@bmike Sí, no lo uso mucho, pero fue lo primero que pensé cuando leí esta pregunta (después de descubrir que Finder no tiene esta funcionalidad incorporada de forma predeterminada). Tiene la ventaja de que DTerm es una herramienta de propósito general y no algo que deba instalarse o configurarse para este propósito específico.
¡Esto es exactamente para lo que uso DTerm la mayor parte del tiempo!
También es una buena forma de quitar la presuntuosa nueva línea de la salida estándar de pwd, con una extensión pwd | tr -d '\n' | pbcopy.
Puede agregar un alias a su archivo de inicialización de shell (por ejemplo ~/.zshrc, ) para que pwdccopie el directorio de la terminal actual en el portapapeles, así:alias pwdc='pwd | pbcopy'

Puede usar Automator para hacer esto con un solo atajo de teclado que puede usar desde cualquier aplicación y sin instalar software de terceros.

Este servicio de Automator copiará la ruta de la ventana frontal del Finder, en lugar de la ruta de un archivo o carpeta seleccionados, por lo que no afectará qué ventanas están abiertas o qué elementos están seleccionados. La ruta que se copia es simplemente texto, por lo que se puede pegar en cualquier lugar donde se pueda pegar texto.

  1. Abra Automator y cree un nuevo Servicio.
  2. Cambie "El servicio recibe seleccionado" a no input(o "archivos o carpetas" para que aparezca con un clic derecho) y déjelo establecido en any application(a menos que solo desee que funcione desde una aplicación específica, como el Finder).
  3. Agregue una acción "Ejecutar AppleScript" al flujo de trabajo.
  4. Reemplazar (* Your script goes here *)con:

    try
        tell application "Finder" to set the clipboard to POSIX path of (target of window 1 as alias)
    on error
        beep
    end try
    
  5. Guarde el Servicio de Automator con el nombre que desee que tenga en el menú Servicios.

Este Servicio de Automator ahora estará en su menú de Servicios.

Nota: Esto no escapa a los espacios, por lo que si su ruta tiene espacios, es posible que deba citarlo. Por ejemplo, en la Terminal, la ruta debería citarse, pero en el comando "Ir a la carpeta" del Finder, no. Si desea que se copie como se indica, puede cambiar POSIX patha quoted form of POSIX path.

Copiar el servicio de ruta de la ventana del buscador

Puede agregar un atajo de teclado para el servicio yendo a Preferencias del sistema> Teclado> Atajos de teclado, luego haga clic en "Servicios" en el panel izquierdo, luego desplácese hacia abajo hasta la sección "General" en el panel derecho hasta que encuentre su servicio.

Método abreviado de teclado para copiar la ruta de la ventana del Finder

Gracias, está funcionando para mí, pero una cosa más que me gusta es que si selecciono alguna carpeta y obtengo la "Ruta de la ventana Copiar Finder", también le doy la ruta de la ventana actual sin tener la carpeta que seleccioné. ¿Pueden ayudarme a cómo llegar de esa manera, por favor? Por ejemplo, estoy en la carpeta AA, AA contiene la carpeta BB. Si selecciono la carpeta BB y obtengo la ruta, contiene la ruta hasta AA, pero no BB, cómo obtener la ruta hasta BB.

Command+ I, luego copie la información debajo de Dónde:

ingrese la descripción de la imagen aquí

@daviesgeek muchas gracias por insertar una imagen para mí.
No hay problema. ¡Me alegro de poder ayudar!
@daviesgeek Solo quiero saber, ¿cómo puedo hacer el botón de comando como editaste en mi respuesta?
Puedes usar<kbd>Command</kbd>
Esto está roto en Yosemite
@ClintM Exacto, estúpido Yosemite.
@ClintM Todavía puede seleccionar y copiar el texto. Cuando pegas lo que copiaste, las flechas se convierten en barras.
@brandaemon je... entonces se ha "arreglado"... no funcionaba antes

Si necesita la ruta en Terminal/iTerm, puede simplemente seleccionar el archivo/carpeta en Finder, copiarlo ( Command+ C), cambiar a Terminal y pegarlo ( Command+ V).

También puede arrastrar y soltar el archivo/carpeta en la Terminal/iTerm.

Una respuesta útil para un novato como yo, en lugar de perder mucho tiempo instalando el software 'X'. ¡Apreciado!
Esta respuesta es simple y no tiene dependencias de instalación externas...

El consejo de MacYourself Copiar la ruta del archivo o la carpeta al portapapeles en Mac OS X Lion funciona para mí en 10.7.4. Básicamente, lo guía a través de los pasos para crear un servicio de Automator que se puede usar para copiar la ruta completa de archivos y carpetas desde el Finder. Luego lo usa asignando una tecla de acceso directo personalizada o usa el menú contextual para copiar la ruta al portapapeles cuando se selecciona un archivo o carpeta.

ingrese la descripción de la imagen aquí

Si ayuda, también puede escribir el siguiente comando en la Terminal para que el Finder muestre la ruta completa a la carpeta actual en su barra de título:

defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES

Usa lo siguiente para apagarlo de nuevo:

defaults write com.apple.finder _FXShowPosixPathInTitle -bool NO
Dado que ya tiene el AppleScript creado (suponiendo que la captura de pantalla sea suya), ¿puede subirlo a un servicio como droplr.com y ofrecer un enlace de descarga directa, por favor? Será más fácil de usar para el OP. Teniendo en cuenta que es nuevo en el sistema operativo Mac, asumo que no le gustará jugar con los servicios de applescripts/automator.
@XAleXOwnZX Al ver que el archivo vive ~/Library/Services, creo que describir un método para descargar el archivo y luego copiarlo aquí (como ~/Libraryestá oculto de forma predeterminada en Lion), luego seguir la mitad de las instrucciones de MacYourself para agregar el acceso directo en realidad sería más complicado. Las instrucciones proporcionadas por MacYourself son bastante sencillas de seguir.
funciona, supongo. Lol para este tipo de preguntas, normalmente uso el creador de paquetes para crear un instalador que se encargue de todo según sea necesario, pero estoy de vacaciones =/
Esto parece ser un valor predeterminado en El Capitán ahora

Si usa Alfred, puede seleccionar los elementos, presionar ⌥⌘\ y seleccionar Copiar ruta al Portapapeles.

También podría asignar un acceso directo a un script como este:

tell application "Finder"
    set the clipboard to POSIX path of (insertion location as alias)
end

Esto copiaría las rutas de todos los elementos seleccionados:

set l to {}
tell application "Finder" to repeat with f in (get selection)
    set end of l to POSIX path of (f as alias)
end repeat
set text item delimiters to linefeed
set the clipboard to (l as text)

Hay un error en 10.7 y 10.8 en el que la selección, la ubicación de inserción y las propiedades de destino hacen referencia a la segunda ventana que está más al frente después de abrir una nueva ventana. Afecta tanto a los scripts como a Alfred, pero no a los servicios de Automator. Como solución alternativa, puede mover el foco a otra aplicación y volver antes de obtener la selección:

activate application "SystemUIServer"
activate application "Finder"
Buen material; tenga en cuenta que el error también afecta a Alfred. Si solo se necesitan elementos seleccionados (segundo script), puede evitar el error modificando el script para operar inputy asignándolo a un servicio basado en Automator que recibe files or foldersen formato Finder.app. Para evitar el error al obtener la ubicación de inserción de Finder (primer script), puede aplicar el siguiente truco, feo pero efectivo (funciona en 10.8.2): ocultar Finder, luego mostrarlo nuevamente después de un breve retraso; esto hará que Finder para informar la ubicación correcta de selección/inserción después; desventaja obvia: intermitente.

Aunque esto no responde a su pregunta directamente, tengo un método más eficiente para obtener la ruta del archivo (presumiblemente para pegarlo en la terminal o en un archivo de texto, por ejemplo). Simplemente arrastrando y soltando el archivo en un campo de texto, se insertará automáticamente la ruta del archivo.

Hace unos años, siempre tenía la utilidad pos escrita por Gary Kerbaugh para mejorar la interacción buscador/terminal.

  • cdfiría cda la ruta de la ventana del Finder más al frente
  • fdcabriría una ventana del Finder en la ruta de shell actual
  • posdsimplemente volcaría el camino

Esto junto con pbcopyy pbpastedebería ajustarse a la ley para obtener rutas arbitrarias al formato de texto y luego a su portapapeles.

Creo que homebrew ha adoptado parte, pero no todo, de este paquete, por lo que no estoy seguro de que pueda encontrar una versión viable de todo lo anterior, pero fue mágico cuando comencé a usarlo. Ahora solo uso Launchbar para mover archivos sin preocuparme tanto por grabar una carpeta específica.

posd | pbcopyparece que funcionaría. El resto parece bueno tener (¿aunque no open .funcionará en lugar de fdc?)
Es unix: debería haber n+1 otras formas de lograr la mayoría de las cosas, incluso si n es lo suficientemente grande. Aunque me gusta open ., es elegante.
desafortunadamente, posya no está en homebrew.

No sé por qué o qué hago, pero esto existe en mi PC (High Sierra 10.13.4)

ingrese la descripción de la imagen aquí

La forma más fácil que conozco de obtener la ruta a un archivo o carpeta es Obtener información sobre la carpeta o el archivo (selecciónelo, haga clic con el botón derecho y elija Obtener información), y luego, en la sección "General" del medio, puede seleccionar y copiar (comando + C) la ruta.

captura de pantalla de la información del archivo con la ruta

En cuanto a su otra pregunta, hacer clic en los encabezados de las columnas en la vista de lista en el Finder le permite ordenar de manera ascendente o descendente.

No entiendo la última pregunta que hace; nuevamente, diría que vaya al archivo en sí, haga clic con el botón derecho y haga lo que describí anteriormente para obtener la ruta.

Roto en Yosemite.
no existe en High Sierra
oh, espera, existe pero sin / pero se muestra como una flecha
pero cuando pegas el resultado, la flecha se pega como "/"

En OS X, se pueden lograr muchas cosas arrastrando y soltando. Apple cree que no es necesario que pueda acceder a la ruta del archivo de manera conveniente porque todo se puede lograr arrastrando y soltando. No soy completamente de la misma opinión, pero por lo general puedo hacer lo que quiero.

Así es como se realizan las acciones comunes en OS X donde necesitaría una ruta en Windows o Linux.

  • Para saber dónde se encuentra en Finder, haga clic con el botón derecho (o Command ⌘clic) en el nombre de la carpeta en el área del título.

  • En un cuadro de diálogo de selección de archivos, para navegar a una ubicación abierta del Finder, arrastre la carpeta o cualquier archivo de esa carpeta al cuadro de diálogo de selección. Esto no moverá el archivo o la carpeta como lo hace en Windows, sino que establecerá la ruta del cuadro de diálogo Archivo en su lugar. (También puede arrastrar el ícono del proxy del documento (desde la barra de título de la mayoría de las aplicaciones) o arrastrar elementos fuera del Dock para hacer esto).

  • Para obtener la ruta de un archivo en Terminal u otra aplicación de solo texto, arrastre el archivo en la ventana de Terminal.

Lo que no es (fácilmente) posible:

  • Insertar la ruta de archivo de un archivo que se admite de manera diferente en una aplicación. Por ejemplo, al arrastrar una imagen a TextEdit (en modo RichText), se insertará la imagen en sí en lugar de la ruta del archivo.
Confusión potencial: aunque el comando-clic es la acción correcta para lo que está describiendo, el término 'clic derecho' en OS X convencionalmente se refiere a 'control-clic'.
@applehelpwriter Funciona tanto con el botón derecho (que es [Ctrl]+clic) como con [Cmd ⌘]+clic, por lo que la oración es absolutamente correcta, aunque otra persona la haya editado.
De acuerdo, pero no lo leí de esa manera. La expresión "clic con el botón derecho (o clic con el comando)" no se analiza como dos opciones diferentes, que deberían ser "hacer A o B". Más bien, parece una opción a la que se le da un nombre alternativo entre paréntesis. Es por eso que comencé mi comentario con 'confusión potencial'.

Dado que Yosemite ahora tiene menús desplegables similares a Windows en la ventana de información y este es el mejor resultado de Google, esto es lo que se me ocurrió:

  1. Presione Command+ Ipara abrir la Infoventana, las secciones Commentsy se expandirán de forma predeterminadaPreview
  2. Arrastre el ícono de la carpeta de Vista previa al cuadro de texto de Comentarios
  3. Command+ A, Command+ Xpara cortar la ruta al portapapeles y deshacer el cambio de comentario, Command+ Wpara cerrar

A partir de macOS Catalina: como dijo @Kokizzu, para obtener "Copiar como nombre de ruta", abra su menú contextual (haga clic con el botón derecho o haga clic con dos dedos). Una vez que esté abierto, mantenga presionada la alt/optiontecla para que aparezca esa opción.

Para copiar la ruta activa en Finder, simplemente haga clic con la tecla Control presionada en la carpeta o el archivo para que aparezca el menú contextual. A continuación, seleccione copy the_folder/file_you_want. A continuación, puede pegar la ruta en una ventana de terminal.

Desafortunadamente, esto no copia la ruta completa (solo el nombre).
editado No copia la ruta completa en todas partes, pero lo hace en una ventana de terminal. Si eso es lo que buscaba el OP, entonces funciona.

Acabo de hacer una acción rápida de Automator. La acción Obtener la primera ruta de la ventana del Finder obtendrá la ruta Posix de la ventana del Finder más frontal. Es una beta, pero está funcionando bien. 10.8 solamente Devolverá la ruta Posix de la ventana del Finder más abierta al frente.

1, Abra el zip e instálelo haciendo doble clic en la acción.

Entrará en el nombre de Acciones de utilidades 'Obtener la primera ruta de la ventana del Finder'

2, arrástrelo normalmente al área de flujo de trabajo y agregue, por ejemplo, la acción 'Copiar al portapapeles' debajo de élingrese la descripción de la imagen aquí

El Servicio seleccionado puede ser un archivo o una carpeta si lo guarda como un 'Servicio', esto le permitirá usar el menú contextual al hacer clic en cualquier archivo o carpeta. hacerlo ejecutará las acciones y solo devolverá el mismo resultado de ventana. No es el archivo o la carpeta seleccionados. Alternativamente, configúrelo en 'ninguno.

Puede guardarlo como un servicio o, como yo, guardarlo como una aplicación y luego arrastrar la aplicación a la barra de herramientas de Windows del buscador. Donde solo tienes que hacer clic en él.ingrese la descripción de la imagen aquí

El botón Copy Path Finder es, con mucho, el método más fácil que he encontrado para lograr esto. Es muy simple: descárguelo, colóquelo en su carpeta de aplicaciones, luego arrástrelo a la barra de herramientas de su buscador y listo.

Parece que no funciona con OS X 10.9. La aplicación aparece como dañada cuando intento ejecutarla.