Доступ к iCloud Drive через терминал

82

OS X 10.10 была только что выпущена, и одной из функций, которую я лично ожидал больше всего, был iCloud Drive. К сожалению, мне пришлось узнать, что он не так доступен, как Dropbox.

file ~/Dropbox
/Users/Ingwie/Dropbox/: directory

... но iCloud Drive?

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

Кто-нибудь знает, как правильно получить доступ к iCloud Drive через терминал? Или это просто невозможно и только красиво представлено приложением Finder?

Ингви Феникс
источник

Ответы:

9

Шаг первый, настройте ссылку на фактический путь к папке iCloud Drive:

Сначала создайте ссылку в вашем домашнем каталоге на диск iCloud:

cd ~
ln -s ~/Library/Mobile\ Documents iCloud

Строки выше делают следующее:

// brings you to home directory
// creates link to said path as the name, 'iCloud'

Набрав cd ~/iCloudв терминале, теперь вы попадете в этот каталог.

Шаг второй, настройте псевдонимы в вашем профиле Bash:

Как только связь установлена, нам нужно настроить псевдоним . Псевдонимы удаляются после перезапуска терминала, поэтому мы должны добавить дополнительный шаг, в котором мы редактируем файл с именем .bash_profile(или создаем его, если у нас его еще нет).

Сделав это, мы можем просто ввести любую привязку и доставить ее в нужный каталог. В этом примере мы будем использовать iнас, чтобы перейти прямо в нашу папку «Документы iCloud».

Мы можем создать псевдоним для папки iCloud Drive и сохранить его в нашем профиле bash следующим образом:

cd ~
ls -a

Ищите файл с именем .bash_profile.

Если у вас нет .bash_profile, введите:

sudo touch .bash_profile

Введите пароль администратора и нажмите Enter. (Примечание: добавление sudoзаставляет команду терминала запускаться от имени администратора, что требует аутентификации. Если не добавить sudoкоманду до ее завершения, команда может быть отклонена из-за прав доступа пользователя).

Как только вы нашли .bash_profileили закончили его создание, мы должны теперь открыть его и определить наш псевдоним внутри следующим образом. Тип:

sudo nano .bash_profile

Вам снова будет предложено ввести пароль администратора. Введите его и нажмите Enter.

Это загрузит нано-редактор. Нажмите, escчтобы иметь возможность редактировать, и, используя клавиатуру , нажмите клавишу со стрелкой вниз. Тип:

alias i="cd ~/iCloud/com~apple~CloudDocs/Documents"

Нажмите, Ctrl + Oчтобы сохранить, а затем enter, затем нажмите, Ctrl + Xчтобы выйти.

Ваш псевдоним теперь сохранен. Если бы мы не отредактировали наш .bash_profileи просто набрали псевдоним в терминале, он будет удален при перезапуске терминала. Добавление этой команды в наш профиль bash предотвратит это.

Введите свой псевдоним в терминале:

Теперь, когда вы сохранили свой псевдоним .bash_profile, мы должны, наконец, выполнить наш псевдоним хотя бы один раз (я пытался этого не делать, и он не сработал), повторно напечатав наш псевдоним в общем терминале:

alias i="cd ~/iCloud/com~apple~CloudDocs/Documents"

Это создаст псевдоним, и теперь будет работать. Если вы перезапустите терминал и снова введете команду alias, она также должна работать.

Результаты:

После этой настройки мы можем просто ввести: iв терминал, который загрузит наш каталог iCloud Drive \ Documents.

Примечание. Вы можете создать любое количество псевдонимов для любой папки, используя любое связывание клавиш по формуле выше. Я просто выбрал папку «Документы», так как это был вопрос ОП.

Вышеуказанная стратегия была изложена в статье в техническом блоге здесь: https://danielmiessler.com/blog/access-icloud-drive-terminal

Вот руководство по сохранению псевдонимов в bash_profile (примечание sudoне включено в описание, поэтому, если оно не работает, обязательно включите его): http://www.techradar.com/how-to/computing/apple/terminal-101- СОЗДАЕТ-псевдонимы-для-команд-1305638

Как я настроил мой:

Я установил псевдоним, который называется « idevгде», введя его в терминале, и доставит меня в Developmentпапку, которую я создал на своем диске iCloud:

~/iCloud/com~apple~CloudDocs/Development

Обратите внимание, что строка выше по-прежнему использует настройку ссылки на первом этапе.

Мой личный псевдоним I настроен следующим образом:

alias idev="cd ~/iCloud/com~apple~CloudDocs/Development"

Использование ссылки, а затем псевдонима может позволить нам легко получить доступ к папке iCloud docs. Самая запутанная часть - это редактирование .bash_profileфайла, но в целом просто следуйте инструкциям, и теперь каждый раз, когда вы открываете терминал, ваши псевдонимы должны работать!

twknab
источник
Вы абсолютно не должны использовать sudoдля редактирования файлов профиля оболочки вашего локального пользователя.
ELLIOTTCABLE
1
@ELLIOTCABLE (во всех заглавных буквах) Вместо того, чтобы просто-1 меня и дать мне свой застенчивый ответ, почему бы не дать мне свое обоснование и то, как вы подходите к нему, купите, отправив ВАШ ответ ниже.
Twknab
1
@ELLIOTCABLE Кроме того, единственный способ отредактировать мой профиль bash и сохранить любые изменения, которые я внесу в файл, - это использовать sudo для доступа к файлу от имени администратора. Я видел множество примеров редактирования файлов таким образом, и, учитывая, что вы просто отказались от моего ответа, не предоставив свой собственный, я не могу уважать или принимать качество вашего комментария или ответа.
Twknab
107

Вы правы в том, что каталог iCloud Drive находится в Mobile Documents. Из домашнего каталога вашего пользователя вы можете получить доступ к iCloud Drive через терминал с помощью:

cd ~/Library/Mobile\ Documents/com~apple~CloudDocs
Мэтью Уайт
источник
4
Потрясающие! Собираю символическую ссылку в мою домашнюю папку, чтобы я мог заметить это быстрее.
Ингви Феникс
Это переехало? У меня даже нет Library/Mobile\ Documents/каталога.
Джозеф Хансен
@JosephHansen Я не уверен, в моей системе каталог мобильных документов все еще присутствует в OSX 10.10.1.
Мэтью Уайт
2
Он дал относительный путь здесь. Убедитесь, что вы находитесь в / у, ~прежде чем копировать макароны в терминал.
DigitalDesignDj
Моя ошибка извините, я обновлю свой ответ.
Мэтью Уайт
6

Мэтью прав; Если у вас включен iCloud Drive в sysPrefs, там есть папка iCloud Drive, он просто перечислял ее относительно вашей учетной записи пользователя.

Я не уверен насчет "com.apple.CloudDocs", хотя. Команды и списки для всего, включая мобильные приложения, НЕ видны в Finder - только в Терминале.

Начиная с 10.10.1, если вы ищете абсолютный путь к всеобъемлющему каталогу, попробуйте:

 /Users/username/Library/Mobile\ Documents

альтернативно:

~/Library/Mobile\ Documents
johnnytcomo
источник
2

Чтобы найти путь к файлу, просто откройте терминал (вы можете использовать инструмент поиска), перетащите файл из поиска в терминал, и он предоставит вам его путь. Это, однако, проблематично для файлов на Диске iCloud, так как очевидно, что указанный путь не работает при попытке доступа к нему из других программ, кроме той, в которой он зарегистрирован.

Пол Ваучер
источник
1

Я создал приложение Automator, которое запускает команду терминала:

open ~/Library/Mobile\ Documents/com~apple~CloudDocs

Вы можете скачать здесь . Просто поместите его внутрь Applicationsи перетащите в док.

Маттиа Асторино
источник
1

Я не могу писать комментарии.

Из-за ~ путь должен быть в "", чтобы открыть. Я создал символическую ссылку для более удобного доступа.

sudo mkdir /mounts
sudo cd /mounts
sudo ln -s "/Users/fusca/Library/Mobile Documents/com~apple~CloudDocs" iCloud
Fusca Software
источник