Scaricare una cartella con la CLI dosya
Individua una cartella remota, scarica il suo albero in una directory locale vuota, esamina gli errori parziali e confronta nomi e dimensioni in sicurezza.
Ultima revisione
Gli screenshot mostrano l’interfaccia in inglese.
Usa dosya download --recursive per copiare ogni file visibile sotto una cartella dosya in una directory locale, mantenendo la struttura delle cartelle. Parti da una destinazione vuota: la modalità ricorsiva scrive ogni percorso restituito senza chiedere conferma prima di sovrascrivere un file.
Prepara origine e destinazione
La credenziale deve avere accesso in lettura allo spazio di lavoro e il ruolo deve consentire l’accesso ai file e il download. Restrizioni alle cartelle, contenuti nascosti e blocchi possono limitare i risultati dello snapshot.
Elenca la cartella superiore, poi copia l’ID della cartella o verifica il percorso esatto:
DOSYA_WORKSPACE_ID='ws_REPLACE_ME'
dosya ls --workspace "$DOSYA_WORKSPACE_ID"
Crea una nuova destinazione locale e verifica che sia vuota:
DEST='./dosya-folder-check'
mkdir -p "$DEST"
find "$DEST" -mindepth 1 -print -quit
Se l’ultimo comando mostra qualcosa, scegli un’altra directory. Il download ricorsivo non applica la conferma interattiva di sovrascrittura, il controllo --force, il file ausiliario per riprendere i segmenti o la verifica di integrità ETag previsti per un singolo file.

Procedura
Usa un percorso relativo allo spazio di lavoro:
dosya download --recursive reports/2026 \
--workspace "$DOSYA_WORKSPACE_ID" \
--output "$DEST"
Puoi invece usare un ID cartella o includere lo spazio di lavoro nel riferimento:
dosya download -r fld_REPLACE_ME -w "$DOSYA_WORKSPACE_ID" -o "$DEST"
dosya download -r "${DOSYA_WORKSPACE_ID}:reports/2026" -o "$DEST"
La forma ws_ID:path prevale su --workspace; --workspace prevale sul valore predefinito salvato. Un percorso non risolvibile produce No such folder: … o No such file or folder: …. Se passi un file alla modalità ricorsiva, il comando non riesce perché il risolutore richiede una cartella.
Il comando acquisisce uno snapshot remoto, costruisce i percorsi sotto la cartella scelta e richiede URL temporanei di download in gruppi di massimo 500 ID di file. Ogni oggetto viene scritto prima in un percorso .dosya-partial e rinominato solo al completamento della risposta. I percorsi forniti dal server che escono dalla destinazione, inclusi quelli con attraversamento o link simbolici non sicuri, vengono rifiutati.
Una cartella remota vuota mostra No files to download. e termina correttamente. Le cartelle sono rappresentate dai percorsi dei file scaricati, quindi una sottocartella vuota potrebbe non produrre una directory locale.
Leggi il risultato finale
L’output interattivo termina con Downloaded N file(s) to DEST/. Se il download di un file non riesce, il comando mostra una riga come Failed: relative/path: HTTP STATUS, continua con gli altri file, riepiloga i download completati e termina con un codice diverso da zero.
Per l’automazione, richiedi un output strutturato:
dosya download --recursive reports/2026 \
--workspace "$DOSYA_WORKSPACE_ID" \
--output "$DEST" \
--json > recursive-download-result.json
python3 -m json.tool recursive-download-result.json
Il JSON contiene ok, downloaded e failures. Considera la copia locale incompleta se trovi ok: false o un qualsiasi elemento di errore. Poiché i file completati restano nella destinazione, scegli se riprovare in una nuova directory vuota o sistemare la struttura parziale. Non presumere che una seconda esecuzione sia una sostituzione atomica.
Confronta contenuto remoto e locale
Registra la struttura e le dimensioni dei file locali senza modificarli:
find "$DEST" -type f -print0 \
| sort -z \
| xargs -0 -n1 sh -c 'wc -c < "$1" | tr -d "\n"; printf " %s\n" "$1"' sh
Confronta numero, nomi relativi e dimensioni in byte con la cartella dosya. Per verificare una copia di sicurezza con maggiore certezza, scarica singolarmente i file critici con dosya download FILE -o NEW_PATH, che esegue il controllo del contenuto tramite ETag supportato dalla CLI, oppure calcola e confronta un checksum applicativo già attendibile. La modalità ricorsiva conferma il completamento HTTP e gli errori segnalati, ma non calcola un hash per ogni file salvato.

Risolvi i problemi comuni
Folder required. Inserisci la cartella remota dopo --recursive, ad esempio dosya download -r reports -o ./backup.
No workspace for "…". Aggiungi ws_ID: al percorso, passa --workspace oppure imposta uno spazio di lavoro predefinito.
Mancano alcuni percorsi ma non compare alcun errore HTTP. Controlla se la chiave o il membro è limitato a una cartella, se i contenuti sono nascosti e se il ruolo corrente consente il download.
Esisteva già un file locale. La modalità ricorsiva è pensata per una destinazione preparata e non chiede conferma per ogni percorso. Se la copia locale precedente è stata sostituita, ripristinala dalla copia di sicurezza e ripeti in una directory vuota.
Un’esecuzione si è interrotta a metà. Esamina l’array degli errori o stderr, conserva l’output per la diagnosi e usa una nuova destinazione per una verifica pulita. La ripresa .dosya-download dei singoli file non si applica al download ricorsivo delle cartelle.
Risultato previsto
Il comando termina correttamente senza errori e la destinazione contiene gli stessi percorsi e le stesse dimensioni in byte dei file visibili nel sottoalbero remoto scelto. La directory locale preesistente è rimasta vuota fino all’inizio di questo download controllato.
Guide correlate
Ti è stata utile?
Caricamento delle valutazioni…
Quando voti, salviamo un cookie tecnico per un massimo di 180 giorni, così puoi cambiare la tua risposta.
Domande e risposte
Fai una domanda sui passaggi di questa guida. Le domande vengono revisionate prima della pubblicazione.
Non inserire dati dell’account, credenziali o file privati nelle domande pubbliche. Usa l’assistenza privata in questi casi.
Caricamento delle domande…
Accedi al tuo account dosya per fare una domanda.