Puoi rimuovere i file e le cartelle di Google Drive da Il mio Drive e dai Drive condivisi. Per farlo, hai due opzioni: cestinare o eliminare.
Puoi spostare file e cartelle nel cestino e ripristinarli (entro 30 giorni dal cestino). L'eliminazione di file e cartelle ne comporta la rimozione definitiva da Drive. Se sposti nel cestino, ripristini o elimini in modo definitivo più file o cartelle contemporaneamente, potrebbe essere necessario un po' di tempo per notare le modifiche.
Questa guida spiega come eliminare i file su Drive.
Spazzatura
Per rimuovere i file di Drive, puoi spostarli nel cestino. I file nel cestino vengono eliminati automaticamente dopo 30 giorni. Puoi ripristinare i file dal cestino prima che siano trascorsi 30 giorni.
Solo il proprietario può spostare un file nel cestino, mentre gli altri utenti non possono visualizzarlo. Se tenti di spostare nel cestino un file che non è di tua proprietà, viene visualizzato un errore insufficientFilePermissions
. Per ulteriori informazioni, vedi Autorizzazioni.
Per verificare di essere il proprietario del file, chiama il metodo files.get
con il parametro fileId
e il parametro fields
impostati sul campo booleano ownedByMe
. Il campo ownedByMe
non viene compilato per i file dei Drive condivisi perché sono di proprietà del Drive condiviso e non di singoli utenti. Per ulteriori informazioni sulla restituzione di campi utilizzando il parametro fields
, consulta Restituire campi specifici per un file.
Se non sei il proprietario del file, ma vuoi comunque una copia del file spostato nel cestino, procedi in uno dei seguenti modi:
- Crea una copia del file.
- Contatta il proprietario per richiederne il ripristino dal cestino.
Spostare un file nel cestino
Per spostare un file nel cestino, utilizza il metodo files.update
e imposta il campo trashed
su True
. Per spostare un file del Drive condiviso nel cestino, devi anche impostare il parametro di query supportsAllDrives
su True
. Per ulteriori informazioni, consulta
Implementare il supporto dei Drive condivisi.
In caso di esito positivo, il corpo della risposta contiene un'istanza della risorsa files.
Il seguente esempio di codice mostra come utilizzare fileId
per contrassegnare il file come nel cestino:
Python
body_value = {'trashed': True}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': True
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
Sostituisci FILE_ID con il valore fileId
del file che vuoi spostare nel cestino.
Determinare le proprietà di un file spostato nel cestino
Quando un file viene spostato nel cestino, puoi recuperare altre proprietà files
. Puoi utilizzare il metodo files.get
e includere i seguenti campi nel parametro fields
. Per ulteriori informazioni, consulta Restituire campi specifici per un file.
I seguenti campi vengono compilati per tutti i file:
trashed
: indica se il file è stato spostato nel cestino in modo esplicito o da una cartella principale cestinata. Tieni presente che, se usitrashed
con il metodofiles.update
per impostare lo stato del file, il metodofiles.get
recupera lo stato del file.explicitlyTrashed
: indica se il file è stato spostato esplicitamente nel cestino da una cartella principale, anziché in modo ricorsivo.
I seguenti campi vengono compilati solo per i file che si trovano all'interno di un Drive condiviso:
trashedTime
: l'ora in cui l'elemento è stato spostato nel cestino nel formato data e ora RFC 3339. Se utilizzi la versione v2 precedente dell'API Drive, questo campo si chiamatrashedDate
.trashingUser
: l'utente che lo ha spostato in modo esplicito nel cestino.
Recuperare un file dal cestino
Per recuperare un file dal cestino, utilizza il metodo files.update
e imposta il campo trashed
su False
. Per rimuovere dal cestino un file di un Drive condiviso, devi anche impostare
il parametro di query supportsAllDrives
su True
. Per ulteriori informazioni, consulta
Implementare il supporto dei Drive condivisi.
In caso di esito positivo, il corpo della risposta contiene un'istanza della risorsa files.
Il seguente esempio di codice mostra come utilizzare fileId
per contrassegnare il file come rimosso dal cestino:
Python
body_value = {'trashed': False}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': False
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
Sostituisci FILE_ID con il valore fileId
del file che vuoi rimuovere dal cestino.
Svuota cestino
Puoi eliminare definitivamente tutti i file di Drive che l'utente ha spostato nel
cestino utilizzando il
metodo files.emptyTrash
. Per svuotare il cestino di un Drive condiviso, devi anche impostare il parametro di query driveId
sull'ID del Drive condiviso.
In caso di esito positivo, il corpo della risposta contiene un'istanza vuota.
Il seguente esempio di codice mostra come utilizzare fileId
per eliminare tutti i file nel cestino:
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
Elimina
Puoi eliminare definitivamente un file di Drive senza spostarlo nel cestino. Dopo aver eliminato un file, tutte le persone con cui lo hai condiviso non potranno più accedervi. Se vuoi che altre persone mantengano l'accesso al file, puoi trasferire la proprietà a un'altra persona prima dell'eliminazione.
Per eliminare un file di un Drive condiviso, l'utente deve avere role=organizer
nella cartella principale. Se elimini una cartella, vengono eliminati anche tutti i discendenti di proprietà dell'utente. Per ulteriori informazioni, vedi Autorizzazioni.
Per eliminare definitivamente un file di proprietà dell'utente senza spostarlo nel cestino, utilizza il metodo files.delete
. Per eliminare un
file di un Drive condiviso, devi anche impostare il parametro di query supportsAllDrives
su
True
. Per ulteriori informazioni, consulta Implementare il supporto dei Drive condivisi.
In caso di esito positivo, il corpo della risposta contiene un'istanza vuota.
Il seguente esempio di codice mostra come utilizzare fileId
per eliminare il file:
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
Sostituisci FILE_ID con il valore fileId
del file che vuoi eliminare.
Autorizzazioni
La tabella seguente mostra le autorizzazioni del ruolo necessarie per eseguire ogni operazione. Per un elenco completo dei ruoli e delle operazioni consentite da ciascuno, consulta Ruoli e autorizzazioni.
Operazione consentita | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
---|---|---|---|---|---|---|
Spostare file e cartelle nel cestino | ✔ | ✔ | ✔ | |||
Recuperare file e cartelle dal cestino | ✔ | ✔ | ✔ | |||
Svuotare il cestino | ✔ | ✔ | ||||
Eliminare definitivamente un file o una cartella | ✔ | ✔ | ||||
Eliminare file e cartelle su un Drive condiviso [*] | ✔ |
Funzionalità
Una risorsa files
contiene una raccolta di campi capabilities
booleani utilizzati per indicare se è possibile eseguire un'azione su un file.
Per verificare le funzionalità, chiama il metodo files.get
con i parametri fileId
e fields
impostati sul campo capabilities
. Per ulteriori informazioni sulla restituzione dei campi utilizzando il parametro fields
, consulta Restituire campi specifici per un file.
I seguenti campi vengono compilati per tutti i file:
capabilities.canTrash
: indica se l'utente corrente può spostare questo file nel cestino.capabilities.canUntrash
: indica se l'utente corrente può ripristinare questo file dal cestino.capabilities.canDelete
: indica se l'utente corrente può eliminare questo file.capabilities.canRemoveChildren
: indica se l'utente corrente può rimuovere i bambini da questa cartella. Questo è false se l'elemento non è una cartella.
I seguenti campi vengono compilati solo per i file che si trovano all'interno di un Drive condiviso:
capabilities.canTrashChildren
: indica se l'utente corrente può spostare nel cestino le organizzazioni secondarie di questa cartella. Questo è false se l'elemento non è una cartella.capabilities.canDeleteChildren
: indica se l'utente corrente può eliminare i elementi secondari di questa cartella. Questo è false se l'elemento non è una cartella.
Argomenti correlati
- Eliminare e ripristinare file su Google Drive
- Differenze tra Drive condiviso e API Il mio Drive
- Ruoli e autorizzazioni