Uzyskaj dostęp do iCloud Drive przez terminal


82

Właśnie wydano OS X 10.10, a jedną z funkcji, na którą osobiście najbardziej czekałem, był iCloud Drive. Niestety musiałem się dowiedzieć, że nie był tak dostępny jak Dropbox.

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

... ale dysk iCloud?

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

Czy ktoś wie, jak prawidłowo uzyskać dostęp do iCloud Drive przez terminal? Czy jest to po prostu niemożliwe i tylko ładnie przedstawione przez aplikację Finder?

Odpowiedzi:


9

Krok pierwszy: skonfiguruj łącze do faktycznej ścieżki do folderu dysku iCloud:

Najpierw utwórz link w swoim katalogu domowym do dysku iCloud:

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

Powyższe linie wykonują następujące czynności:

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

Wpisanie cd ~/iCloudterminala spowoduje teraz przejście do tego katalogu.

Krok drugi: Skonfiguruj aliasy w swoim profilu Bash:

Po ustanowieniu łącza musimy skonfigurować alias . Aliasy są usuwane po ponownym uruchomieniu terminalu, dlatego musimy dodać dodatkowy krok, w którym edytujemy plik o nazwie .bash_profile(lub tworzymy go, jeśli jeszcze go nie mamy).

Po zakończeniu możemy po prostu wpisać dowolne powiązanie i zostać dostarczone do naszego pożądanego katalogu. W tym przykładzie użyjemy, iaby zabrać nas bezpośrednio do naszego folderu Dokumenty iCloud.

Możemy utworzyć alias do folderu iCloud Drive i zapisać go w naszym profilu bash w następujący sposób:

cd ~
ls -a

Poszukaj pliku o nazwie .bash_profile.

Jeśli nie masz .bash_profile, wpisz:

sudo touch .bash_profile

Wprowadź hasło administratora i naciśnij enter. (Uwaga: dodanie sudozmusza polecenie terminalu do uruchomienia jako administrator, a zatem konieczność uwierzytelnienia. Nie dodawanie sudoprzed poleceniem może spowodować odrzucenie polecenia z powodu uprawnień dostępu użytkownika).

Po znalezieniu .bash_profilelub zakończeniu tworzenia musimy go teraz otworzyć i zdefiniować nasz alias w następujący sposób. Rodzaj:

sudo nano .bash_profile

Ponownie pojawi się monit o podanie hasła administratora. Wpisz go i naciśnij enter.

Spowoduje to załadowanie nano edytora. Naciśnij, escaby móc edytować, i używając klawiatury , klawisz strzałki w dół do dołu. Rodzaj:

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

Naciśnij, Ctrl + Oaby zapisać, a enternastępnie naciśnij, Ctrl + Xaby wyjść.

Twój alias został zapisany. Gdybyśmy nie edytowali naszego .bash_profile, a jedynie wpisali alias w terminalu, zostałby on usunięty po ponownym uruchomieniu terminalu. Dodanie tego polecenia do naszego profilu bash temu zapobiegnie.

Wpisz swój alias w terminalu:

Teraz, gdy zapisałeś swój alias na swoim .bash_profile, musimy w końcu wykonać nasz alias przynajmniej raz (próbowałem tego nie robić i to nie zadziałało), ponownie wpisując nasz alias w terminalu ogólnym:

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

Spowoduje to utworzenie aliasu i będzie działać. Jeśli zrestartujesz terminal i ponownie uruchomisz polecenie aliasu, powinno ono również nadal działać.

Wyniki:

Po tej konfiguracji możemy po prostu wpisać: iw terminalu, który załaduje nasz katalog iCloud Drive \ Documents.

Uwaga: Możesz utworzyć dowolną liczbę aliasów do dowolnego folderu, używając dowolnego powiązania klawiszy, korzystając z powyższej formuły. Właśnie wybrałem folder Dokumenty, ponieważ to było pytanie OP.

Powyższa strategia została opisana w artykule na blogu technologicznym tutaj: https://danielmiessler.com/blog/access-icloud-drive-terminal

Oto samouczek na temat zapisywania aliasów w bash_profile (uwaga sudonie jest zawarta w piśmie, więc jeśli nie działa, pamiętaj o dołączeniu): http://www.techradar.com/how-to/computing/apple/terminal-101- tworzenie-aliasy-dla-komend-1305638

Jak skonfigurować mój:

Konfiguruję alias o nazwie idevwhere, wpisując go w terminalu, dostarczając do Developmentfolderu utworzonego na moim dysku iCloud pod adresem:

~/iCloud/com~apple~CloudDocs/Development

Uwaga: powyższy wiersz nadal używa konfiguracji łącza początkowo w kroku pierwszym.

Moja osobista konfiguracja aliasu I jest następująca:

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

Użycie linku, a następnie aliasu, pozwala nam na łatwy dostęp do folderu dokumentów iCloud. Najbardziej mylącą częścią jest edycja .bash_profilepliku, ale ogólnie po prostu postępuj zgodnie z instrukcjami, a teraz za każdym razem, gdy otworzysz terminal, twoje aliasy powinny działać!


Absolutnie nie powinieneś używać sudodo edycji plików profilu powłoki lokalnego użytkownika.
— ELLIOTTCABLE

1
@ELLIOTCABLE (wielkimi literami) Zamiast tylko -1 mnie i daj mi swoją nieśmiałą odpowiedź, dlaczego nie daj mi swojego uzasadnienia i sposobu, w jaki PODEJDZIESZ do niego, kup przesyłając swoją odpowiedź poniżej.
— twknab

1
@ELLIOTCABLE Ponadto jedynym sposobem edycji mojego profilu bash i zapisania wszelkich zmian, które wprowadzam do pliku, jest użycie sudo w celu uzyskania dostępu do pliku jako administrator. Widziałem wiele przykładów edytowania plików w ten sposób i biorąc pod uwagę, że po prostu zignorowałeś moją odpowiedź bez podania własnego, nie mogę uszanować ani zaakceptować jakości twojego komentarza lub odpowiedzi.
— twknab

107

Masz rację, ponieważ katalog dysku iCloud znajduje się w Dokumentach mobilnych. Z katalogu domowego użytkownika możesz uzyskać dostęp do iCloud Drive przez terminal:

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

4
Niesamowite! Oznaczę to dowiązaniem do mojego folderu domowego, aby szybciej go wykryć.
— Ingwie Phoenix

Czy to się poruszyło? Nie mam nawet Library/Mobile\ Documents/katalogu.
— Joseph Hansen,

@JosephHansen Nie jestem pewien, w moim systemie katalog dokumentów mobilnych jest nadal obecny w OSX 10.10.1.
— Matthew White,

2
Podał tutaj względną ścieżkę. Upewnij się, że jesteś w / o ~zanim skopiujesz makaron do swojego terminalu.
— DigitalDesignDj

Mój błąd przepraszam, zaktualizuję swoją odpowiedź.
— Matthew White,

6

Matthew ma rację; JEŻELI masz włączony iCloud Drive w sysPrefs, folder iCloud Drive jest tam, tylko wyświetlał go w odniesieniu do twojego konta użytkownika.

Nie jestem jednak pewien „com.apple.CloudDocs”. Pliki i listy wszystkich plików, w tym aplikacji mobilnych, NIE są widoczne w Finderze - tylko w terminalu.

Począwszy od 10.10.1, jeśli szukasz absolutnej ścieżki do wszechstronnego katalogu, spróbuj:

 /Users/username/Library/Mobile\ Documents

alternatywnie:

~/Library/Mobile\ Documents

2

Aby znaleźć ścieżkę do pliku, po prostu otwórz terminal (możesz użyć narzędzia wyszukiwania), przeciągnij plik z wyszukiwarki w terminalu, a poda on swoją ścieżkę. Jest to jednak problematyczne w przypadku plików na dysku iCloud, ponieważ widoczna ścieżka nie działa podczas próby uzyskania dostępu do niej z innych programów niż ten, w którym jest zarejestrowany.


1

Utworzyłem aplikację Automator, która uruchamia to polecenie terminala:

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

Możesz pobrać tutaj . Po prostu włóż go do środka Applicationsi przeciągnij do doku.


1

Nie mogę pisać komentarzy.

Z powodu ~ ścieżka musi być w „”, aby się otworzyć. Utworzyłem dowiązanie symboliczne, aby uzyskać do niego łatwiejszy dostęp.

sudo mkdir /mounts
sudo cd /mounts
sudo ln -s "/Users/fusca/Library/Mobile Documents/com~apple~CloudDocs" iCloud
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.