Acesse o iCloud Drive pelo terminal

82

O OS X 10.10 acabou de ser lançado e um dos recursos que eu mais esperava pessoalmente era o iCloud Drive. Infelizmente, tive que aprender que não era tão acessível quanto o Dropbox.

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

... mas, iCloud Drive?

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

Alguém sabe como acessar corretamente o iCloud Drive via terminal? Ou isso simplesmente não é possível e é apresentado apenas de maneira adequada pelo Finder App?

Ingwie Phoenix
fonte

Respostas:

9

Etapa 1, configure um link para o caminho real da pasta da unidade do iCloud:

Primeiro, crie um link no diretório inicial para a sua unidade iCloud:

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

As linhas acima fazem o seguinte:

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

Digitar o cd ~/iCloudterminal agora o levará a esse diretório.

Etapa 2, configure seus aliases no seu perfil Bash:

Depois que um link for estabelecido, precisamos configurar um alias . Os aliases são removidos assim que reiniciarmos o terminal, portanto, precisamos adicionar uma etapa extra na qual editamos um arquivo chamado .bash_profile(ou criamos um, se ainda não o tivermos).

Uma vez feito, podemos simplesmente digitar qualquer ligação e ser entregue ao diretório desejado. Neste exemplo, usaremos ipara nos levar diretamente para a pasta Documentos do iCloud.

Podemos criar um alias para a pasta do iCloud Drive e salvá-lo em nosso perfil do bash da seguinte maneira:

cd ~
ls -a

Procure um arquivo chamado .bash_profile.

Se você não possui .bash_profile, digite:

sudo touch .bash_profile

Digite sua senha de administrador e pressione enter. (Nota: adicionar sudoforça o comando do terminal a ser executado como administrador, portanto, é necessário autenticar. A não inclusão sudoantes do comando pode fazer com que o comando seja rejeitado devido a privilégios de acesso do usuário).

Depois de encontrar .bash_profileou terminar de criá-lo, agora devemos abri-lo e definir nosso alias dentro da seguinte forma. Tipo:

sudo nano .bash_profile

Você será solicitado novamente a inserir sua senha de administrador. Digite e pressione enter.

Isso carregará o editor nano. Pressione escpara poder editar e, usando o teclado , a tecla de seta para baixo até a parte inferior. Tipo:

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

Pressione Ctrl + Opara salvar e enter, em seguida, pressione Ctrl + Xpara sair.

Seu alias agora está salvo. Se não tivéssemos editado o nosso .bash_profile, e apenas digitado o apelido no terminal, ele seria apagado quando reiniciarmos o terminal. Adicionar este comando ao nosso perfil bash impedirá isso.

Digite seu Alias ​​no Terminal:

Agora que você salvou seu alias no seu .bash_profile, precisamos finalmente executar nosso alias pelo menos uma vez (tentei não fazer isso e não funcionou), digitando novamente o alias no terminal geral:

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

Isso criará o alias e agora funcionará. Se você reiniciar o terminal e executar o comando alias novamente, ele também deverá funcionar.

Resultados:

Após essa configuração, podemos simplesmente digitar: ino terminal, que carregará o diretório iCloud Drive \ Documents.

Nota: Você pode criar qualquer número de aliases para qualquer pasta, usando qualquer ligação de tecla que desejar, usando a fórmula acima. Acabei de escolher a pasta Documentos, pois essa foi a pergunta do OP.

A estratégia acima foi descrita em um artigo de blog de tecnologia aqui: https://danielmiessler.com/blog/access-icloud-drive-terminal

Aqui está um tutorial sobre como salvar aliases no bash_profile (a observação sudonão está incluída na redação, portanto, se não estiver funcionando, certifique-se de incluir): http://www.techradar.com/how-to/computing/apple/terminal-101- Criando aliases-para-comandos-1305638

Como eu configuro o meu:

Eu configurei um apelido chamado idevwhere, digitando-o no terminal, me envia para uma Developmentpasta que eu criei na minha unidade iCloud em:

~/iCloud/com~apple~CloudDocs/Development

Observe que a linha acima ainda está usando a configuração do link inicialmente na Etapa um.

Meu Alias ​​pessoal que eu configuro é o seguinte:

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

Usar um link e, em seguida, um alias pode permitir o acesso fácil à pasta de documentos do iCloud. A parte mais confusa é editar o .bash_profilearquivo, mas no geral basta seguir as etapas e agora a qualquer momento que você abrir o terminal, seus apelidos deverão funcionar!

twknab
fonte
Você absolutamente não deve estar usando sudopara editar os arquivos de perfil de shell do usuário local.
ELLIOTTCABLE
1
@ELLIOTCABLE (em todas as letras maiúsculas) Em vez de apenas -1 me dar sua resposta tímida, por que não me dar sua lógica e a maneira como você a abordaria, compre enviando SUA resposta abaixo.
twknab
1
@ELLIOTCABLE Além disso, a única maneira de editar meu perfil do bash e salvar as alterações que faço no arquivo é usando o sudo para acessar o arquivo como administrador. Eu já vi vários exemplos de edição de arquivos dessa maneira e, considerando que você acabou de negar minha resposta sem fornecer uma de sua preferência, não posso respeitar ou aceitar a qualidade de seu comentário ou resposta.
twknab
107

Você está certo, pois o diretório do iCloud Drive está localizado em Documentos móveis. No diretório inicial do usuário, você pode acessar o iCloud Drive via terminal com:

cd ~/Library/Mobile\ Documents/com~apple~CloudDocs
Matthew White
fonte
4
Impressionante! Vou vincular isso na minha pasta pessoal para que eu possa identificá-lo mais rapidamente.
Ingwie Phoenix
Isso mudou? Eu nem tenho um Library/Mobile\ Documents/diretório.
Joseph Hansen
@ JosephphHansen Não tenho certeza, no meu sistema o diretório Mobile Documents ainda está presente a partir do OSX 10.10.1.
Matthew White
2
Ele deu um caminho relativo aqui. Certifique-se de estar dentro / ~antes de copiar a massa para o seu terminal.
precisa
Meu erro, desculpe, atualizarei minha resposta.
Matthew White
6

Mateus está certo; Se você tiver o iCloud Drive ativado em sysPrefs, a pasta do iCloud Drive está lá, ele estava apenas listando-o em relação à sua conta de usuário.

Não tenho certeza sobre o "com.apple.CloudDocs" embora. Os arquivos e listas de tudo, incluindo aplicativos móveis, NÃO são visíveis no Finder, apenas no Terminal.

A partir da 10.10.1, se você estiver procurando o caminho absoluto para o diretório abrangente, tente:

 /Users/username/Library/Mobile\ Documents

alternativamente:

~/Library/Mobile\ Documents
johnnytcomo
fonte
2

Para encontrar o caminho para um arquivo, basta abrir o terminal (você pode usar a ferramenta de pesquisa), arraste o arquivo do localizador no terminal e ele fornecerá o caminho. No entanto, isso é problemático com os arquivos no iCloud Drive, pois, aparentemente, o caminho fornecido não funciona ao tentar acessá-lo a partir de outros programas além daquele em que está registrado.

Paul Vaucher
fonte
1

Eu criei um aplicativo Automator que executa este comando do terminal:

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

Você pode baixar aqui . Basta colocá-lo dentro Applicationse arrastá-lo para a estação.

Mattia Astorino
fonte
1

Não consigo escrever comentários.

Por causa do ~, o caminho precisa estar "" aberto. Criei um link simbólico para acessá-lo mais facilmente.

sudo mkdir /mounts
sudo cd /mounts
sudo ln -s "/Users/fusca/Library/Mobile Documents/com~apple~CloudDocs" iCloud
Fusca Software
fonte