通过终端访问 iCloud Drive

Ing*_*nix 90 terminal dropbox icloud macos

OS X 10.10 刚刚发布,我个人最期待的功能之一是 iCloud Drive。不幸的是,我不得不知道它不像 Dropbox 那样易于访问。

file ~/Dropbox
/Users/Ingwie/Dropbox/: directory
Run Code Online (Sandbox Code Playgroud)

...但是,iCloud Drive?

ls -1 Library/Mobile\ Documents/
./
../
.DS_Store
57T9237FN3~net~whatsapp~WhatsApp/
5U8NS4GX82~com~dayoneapp~dayone/
(...)
Run Code Online (Sandbox Code Playgroud)

有谁知道,如何通过终端正确访问 iCloud Drive?或者这根本不可能,只能由 Finder 应用程序很好地呈现?

Mat*_*ite 112

您是正确的,因为 iCloud Drive 目录位于移动文档中。从用户的主目录,您可以通过终端访问 iCloud Drive:

cd ~/Library/Mobile\ Documents/com~apple~CloudDocs
Run Code Online (Sandbox Code Playgroud)

  • 惊人的!将其符号链接到我的主文件夹中,以便我可以更快地找到它。 (4认同)
  • 他在这里给出了一个相对路径。在将意大利面复制到终端之前,请确保您在/在`~`。 (2认同)

twk*_*nab 11

第一步,设置指向 iCloud Drive 文件夹实际路径的链接:

首先,在您的主目录中创建一个指向iCloud 驱动器的链接

cd ~
ln -s ~/Library/Mobile\ Documents iCloud
Run Code Online (Sandbox Code Playgroud)

上面的行执行以下操作:

// brings you to home directory
// creates link to said path as the name, 'iCloud'
Run Code Online (Sandbox Code Playgroud)

cd ~/iCloud现在输入终端会将您带到此目录。

第二步,在 Bash 配置文件中设置别名:

一旦建立了链接,我们需要设置别名。一旦我们重新启动终端,别名就会被删除,因此我们必须添加一个额外的步骤来编辑一个名为的文件.bash_profile(如果我们还没有,则创建一个)。

完成后,我们可以简单地键入任何绑定并传送到我们想要的目录。在此示例中,我们将使用i将我们直接带到我们的 iCloud 文档文件夹。

我们可以为 iCloud Drive 文件夹创建一个别名并将其保存在我们的 bash 配置文件中,如下所示:

cd ~
ls -a
Run Code Online (Sandbox Code Playgroud)

查找名为.bash_profile.

如果没有.bash_profile,请输入:

sudo touch .bash_profile
Run Code Online (Sandbox Code Playgroud)

输入您的管理员密码,然后按 Enter。(注意:添加sudo强制终端命令以管理员身份运行,因此需要进行身份验证。sudo在命令之前不添加可能会导致命令因用户访问权限而被拒绝)。

找到.bash_profile或完成创建后,我们现在必须打开它并在其中定义我们的别名,如下所示。类型:

sudo nano .bash_profile
Run Code Online (Sandbox Code Playgroud)

系统将再次提示您输入管理员密码。输入它并按回车键。

这将加载 nano 编辑器。按esc可以编辑,使用键盘,箭头键向下。类型:

alias i="cd ~/iCloud/com~apple~CloudDocs/Documents"
Run Code Online (Sandbox Code Playgroud)

Ctrl + O保存,enter然后按 ,然后按Ctrl + X退出。

您的别名现已保存。如果我们没有编辑我们的.bash_profile,只是在终端中输入别名,当我们重新启动终端时它会被删除。将此命令添加到我们的 bash 配置文件中将防止出现这种情况。

在终端中输入您的别名:

既然您已将别名保存到您的.bash_profile,我们必须最终至少执行一次我们的别名(我尝试不这样做但它不起作用),通过在通用终端中重新键入我们的别名:

alias i="cd ~/iCloud/com~apple~CloudDocs/Documents"
Run Code Online (Sandbox Code Playgroud)

这将创建别名,现在可以工作了。如果您重新启动终端,并再次运行您的别名命令,它也应该仍然有效。

结果:

完成此设置后,我们可以简单地i在终端中键入:,这将加载我们的 iCloud Drive\Documents 目录。

注意:您可以使用上面的公式使用您喜欢的任何键绑定为任何文件夹创建任意数量的别名。我只是选择了 Documents 文件夹,因为这是 OP 的问题。

上述策略在此处的技术博客文章中进行了概述:https : //danielmiessler.com/blog/access-icloud-drive-terminal

这是一个关于将别名保存到 bash_profile 的教程(注意sudo不包括在写作中,所以如果不起作用,请务必包括):http : //www.techradar.com/how-to/computing/apple/terminal-101-为命令创建别名-1305638

我如何设置:

idev通过在终端中输入来设置一个名为where的别名,将我传送到Development我在 iCloud 驱动器上创建的文件夹:

~/iCloud/com~apple~CloudDocs/Development
Run Code Online (Sandbox Code Playgroud)

请注意,上面的行仍在使用最初在第一步中的链接设置。

我设置的个人别名如下:

alias idev="cd ~/iCloud/com~apple~CloudDocs/Development"
Run Code Online (Sandbox Code Playgroud)

使用链接别名可以让我们轻松访问 iCloud 文档文件夹。最令人困惑的部分是编辑.bash_profile文件,但总的来说只需按照步骤操作,现在无论何时打开终端,您的别名都应该可以工作!


小智 6

马修是对的;如果您在 sysPrefs 中打开了 iCloud Drive,则 iCloud Drive 文件夹就在那里,他只是将它相对于您的用户帐户列出。

不过,我不确定“com.apple.CloudDocs”。所有内容的 com~ 文件和 plist,包括移动应用程序,在 Finder 中不可见 - 仅在终端中。

从 10.10.1 开始,如果您正在寻找包罗万象的目录的绝对路径,请尝试:

 /Users/username/Library/Mobile\ Documents
Run Code Online (Sandbox Code Playgroud)

或者:

~/Library/Mobile\ Documents
Run Code Online (Sandbox Code Playgroud)