如何在OS X Yosemite中复制Unix文件路径


48

当我尝试使用⌘ (Command)+ 获取文件的路径时I,它以不同的方式给出了路径。

我只有在更新到优胜美地之后才能看到这一点。它不是文本。如何获取格式/Users/Myself/Documents/…

Answers:


44

只需在Finder中选择文件本身,然后按CmdC或转到“ 编辑”»“复制”。然后,您可以将路径直接粘贴到终端窗口。

请注意,这将转义特殊字符。

如果要使用易于理解的路径,则需要执行以下操作:

  • 打开实用程序/ Automator.app
  • 创建一个新服务
  • 其设置为接收没有输入来自Finder.app
  • 从左窗格向右拖动Run AppleScript
  • 将以下内容粘贴到该字段中:

    tell application "Finder"
        set sel to the selection as text
        set the clipboard to POSIX path of sel
    end tell
    
  • 它看起来应该像这样:

  • 用您喜欢的任何名称保存服务,例如,复制人类可读的路径

这是第一部分。现在,设置键盘快捷键:

  • 转到»系统首选项»键盘»快捷方式
  • 转到服务部分并向下滚动
  • 设置服务的键盘快捷键

等等,现在当您需要任何选定的Finder项的路径时,请按该快捷方式。


8
谢谢你,兄弟。我认为,像我这样的人不得不浪费时间寻找一种在2014年复制文件路径的方法,这是不可接受的(尤其是苹果)!
2014年

这非常有帮助!但是,如何使它出现在我的快捷方式列表中,因为它不存在。(将其保存为服务)。是否需要在特定位置?
v3nt 2014年

1
@danielCrabbe ~/Library/Services我认为应该保存在其中。如果默认的快捷方式首选项不起作用,FastScripts可能会为您提供帮助。
slhck

1
我希望这可以粘贴到Finder的Go to Folder…command-shift-g)中。
jtheletter,2015年

1
我做了一个更好的Automator工作流,它不接受来自搜索输入,因此将是正确的可用/不可用这取决于你在Finder中做什么:dl.dropboxusercontent.com/u/147461/screenshots/...
ABHI贝克特

13

在其中打开“终端” Applications > Utilities > Terminal,然后将文件拖到窗口中。将显示文件的完整Unix路径。


4
我已经在回答中提到了这一点。问题在于,我猜想OP不需要转义的路径。
slhck

1
@slhck恩。好的。但是现在,这是延迟升级到优胜美地的另一个原因。对于从事生产工作的任何人来说,都有许多大大小小的问题。
JakeGould 2014年

2
是的,这有点不方便。我不再使用该Mac进行“生产”了,但是我不断发现一些小的变化,这使我觉得我应该在10.9上呆了更长的时间。
slhck

3

右键单击(或按住Control单击)文件图标,然后按住Option键。在出现的弹出菜单中,将有一个“将“文件名”复制为路径名”菜单项。该菜单项会将POSIX路径放置到剪贴板上的项目。


1
根据osxdaily.com/2015/11/05/…该版本随OS X 10.11
TecBrat

@TecBrat是的,这可能不在优胜美地,但是现在可以使用。
ThomasW

1

将文件拖到textEdit中以获取路径。

将文件拖到Terminal中将用反斜杠替换文件名中的空格或特殊字符。


您能否解释“随机正斜杠”的含义?当您将文件拖到“终端”窗口中,并且文件中有空格(或其他特殊字符)时,对于外壳,这些字符将被反斜杠转义,例如foo bar将转换为foo\ bar
slhck 2014年

-1

导航到文件。复制文件(Cmd + C)。打开TextEdit或Notes。粘贴(Cmd + V)。

魔法!


6
这不会复制路径,而只会复制文件名。您粘贴到的应用程序实现了此行为,并且只有Terminal似乎粘贴了完整路径(尽管已转义)。
slhck 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.