30 votos

¿Existe una forma de hacer que se descarguen los archivos .icloud a través de la línea de comandos?

En iCloud, en la app Ajustes, tengo marcada la opción "Optimizar el almacenamiento del Mac" y "Carpetas de escritorio y documentos" en "Las apps que almacenan documentos y datos en iCloud aparecerán aquí:"

enter image description here

Esto hará que algunos archivos de mi carpeta "Documentos" se descarguen y sean reemplazados por un pequeño archivo que termina en ".icloud". Puedo descargarlos haciendo clic en el icono de la nube en la vista detallada del Finder. También puedo utilizar "find" desde la línea de comandos para mostrar qué archivos se han descargado, por ejemplo "find . -nombre *.icloud | más".

¿Existe una forma de línea de comandos para hacer que estos archivos se descarguen, ya sea por archivo o directorio?

23voto

pex Puntos 2237

La respuesta de Scott Garret y Allan arriba es muy cercana.

En la terminal, sin embargo, cada *.icloud tiene el prefijo . cuando NO descargado.

Por ejemplo, un directorio llamado foo con archivos optimizados (es decir, descargados en icloud) a.txt y b.txt tendrá el siguiente aspecto

$ cd foo
$ find . -name '.*icloud’
./.a.txt.icloud
./.b.txt.icloud

Para resolver (es decir, descargar) los archivos de icloud, es necesario pasar la ruta al resultante camino a /usr/bin/brctl .

Así, las siguientes obras.

find . -name '.*icloud' | perl -pe 's|(.*)/.(.*).icloud|$1/$2|s' | while read file; do brctl download "$file"; done

Puede supervisar la actividad de descarga según esta respuesta de la siguiente manera :

brctl log --wait --shorten

15voto

Scott Garrett Puntos 81

El comando que está buscando es brctl (situado en /usr/bin ). man brctl te dirá todo lo que necesitas, pero básicamente sólo brctl download /path/to/filename (sin la extensión .icloud) y evict purgará la copia en caché local.

8voto

BottieYOYO Puntos 21

Que yo sepa, no hay ningún comando incluido que permita descargar directamente un archivo o carpeta de iCloud.

Pero como tenía exactamente el mismo problema que tú, descubrí que era posible hacerlo en Swift con el startDownloadingUbiquitousItem función.

Así que escribí un muy simple Swift script para descargar tanto la carpeta como el archivo. Puedes descargarlo en Github: Descargador de iCloud

Espero haber respondido a su pregunta.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X