Pliki i foldery Dysku Google możesz usuwać zarówno z Mojego dysku, jak i dysków współdzielonych. Możesz to zrobić na 2 sposoby: przenieść do kosza lub usunąć.
Możesz przenieść pliki i foldery do kosza, a następnie je przywrócić (w ciągu 30 dni od ich usunięcia). Usunięcie plików i folderów powoduje ich trwałe usunięcie z Dysku. Jeśli usuniesz, przywrócisz albo trwale usuniesz wiele plików lub folderów naraz, zmiany mogą być widoczne dopiero po jakimś czasie.
Z tego przewodnika dowiesz się, jak pozbyć się plików na Dysku.
Kosz
Aby usunąć pliki z Dysku, przenieś je do kosza. Pliki umieszczone w koszu są automatycznie usuwane po 30 dniach. W razie potrzeby możesz przywrócić pliki z kosza w ciągu 30 dni.
Tylko właściciel pliku może przenieść go do kosza, a inni użytkownicy nie mogą wyświetlać plików w koszu właściciela. Jeśli spróbujesz przenieść do kosza plik, który nie należy do Ciebie, wystąpi błąd insufficientFilePermissions
. Więcej informacji znajdziesz w sekcji Uprawnienia.
Aby potwierdzić, że jesteś właścicielem pliku, wywołaj metodę files.get
z parametrami fileId
i fields
ustawionymi na wartość logiczną ownedByMe
. Pole ownedByMe
nie jest wypełniane w przypadku plików na dyskach współdzielonych, ponieważ należą one do dysku współdzielonego, a nie do poszczególnych użytkowników. Więcej informacji o zwracaniu pól za pomocą parametru fields
znajdziesz w artykule Zwracanie określonych pól pliku.
Jeśli nie jesteś właścicielem pliku, ale chcesz mieć jego kopię, wykonaj jedną z tych czynności:
- Utwórz kopię pliku.
- Skontaktuj się z właścicielem i poproś o przywrócenie pliku z kosza.
Przenoszenie pliku do kosza
Aby przenieść plik do kosza, użyj metody files.update
i ustaw pole trashed
na True
. Aby usunąć plik z dysku współdzielonego, musisz też ustawić parametr zapytania supportsAllDrives
na True
. Więcej informacji znajdziesz w artykule Wdrożenie obsługi dysków współdzielonych.
Jeśli operacja się powiedzie, treść odpowiedzi będzie zawierać instancję zasobu files.
Poniższy przykładowy kod pokazuje, jak użyć elementu fileId
, aby oznaczyć plik jako przeniesiony do kosza:
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;
Zastąp FILE_ID wartością fileId
pliku, który chcesz usunąć.
Określanie właściwości pliku w koszu
Po przeniesieniu pliku do kosza możesz pobrać dodatkowe właściwości files
. Możesz użyć metody files.get
i umieścić te pola w parametrze fields
. Więcej informacji znajdziesz w artykule Zwracanie określonych pól pliku.
W przypadku wszystkich plików wypełniane są te pola:
trashed
: czy plik został przeniesiony do kosza, czy został usunięty z kosza. Pamiętaj, że podczas korzystania z funkcjitrashed
za pomocą metodyfiles.update
ustawiasz stan pliku, a metodafiles.get
zwraca stan pliku.explicitlyTrashed
: czy plik został usunięty bezpośrednio z folderu nadrzędnego, czy też został usunięty rekursywnie.
Te pola są wypełniane tylko w przypadku plików znajdujących się na dysku współdzielonym:
trashedTime
: czas usunięcia elementu do kosza w formacie daty i godziny RFC 3339. Jeśli używasz poprzedniej wersji interfejsu Drive API 2, to pole ma nazwętrashedDate
.trashingUser
: jeśli plik został usunięty, użytkownik, który go usunął.
Przywracanie pliku z kosza
Aby przywrócić plik z kosza, użyj metody files.update
i ustaw wartość pola trashed
na False
. Aby przywrócić plik z kosza na dysku współdzielonym, musisz też ustawić parametr zapytania supportsAllDrives
na True
. Więcej informacji znajdziesz w artykule Wdrożenie obsługi dysków współdzielonych.
Jeśli operacja się powiedzie, treść odpowiedzi będzie zawierać instancję zasobu files.
Poniższy przykładowy kod pokazuje, jak użyć funkcji fileId
, aby oznaczyć plik jako nieprzeniesiony do kosza:
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;
Zastąp FILE_ID wartością fileId
pliku, który chcesz przywrócić z kosza.
Opróżnij kosz
Możesz trwale usunąć wszystkie pliki z Dysku, które użytkownik przenieślił do kosza, używając metody files.emptyTrash
. Aby opróżnić kosz na dysku współdzielonym, musisz też ustawić parametr zapytania driveId
na identyfikator dysku współdzielonego.
Jeśli operacja się powiedzie, treść odpowiedzi będzie pusta.
.Poniższy przykładowy kod pokazuje, jak za pomocą funkcji fileId
usunąć wszystkie pliki z kosza:
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
Usuń
Plik z Dysku możesz trwale usunąć bez przenoszenia go do kosza. Gdy usuniesz plik, każda osoba, której go udostępniono, utraci do niego dostęp. Jeśli chcesz, aby inne osoby zachowały dostęp do pliku, możesz przenieść jego własność na inną osobę przed usunięciem.
Aby usunąć plik na dysku współdzielonym, użytkownik musi mieć uprawnienia role=organizer
do folderu nadrzędnego. Jeśli usuniesz folder, wszystkie jego potomki należące do użytkownika również zostaną usunięte. Więcej informacji znajdziesz w artykule Uprawnienia.
Aby trwale usunąć plik należący do użytkownika bez przenoszenia go do kosza, użyj metody files.delete
. Aby usunąć plik z dysku współdzielonego, musisz też ustawić parametr zapytania supportsAllDrives
na True
. Więcej informacji znajdziesz w artykule Wdrażanie obsługi dysków współdzielonych.
Jeśli operacja się uda, treść odpowiedzi będzie zawierać pustą instancję.
Poniższy przykładowy kod pokazuje, jak użyć funkcji fileId
, aby usunąć plik:
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
Zastąp FILE_ID wartością fileId
pliku, który chcesz usunąć.
Uprawnienia
Tabela poniżej zawiera uprawnienia roli wymagane do wykonania poszczególnych operacji. Pełną listę ról i operacji na nich dozwolonych znajdziesz w artykule Role i uprawnienia.
Dozwolona operacja | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
---|---|---|---|---|---|---|
Przenoszenie plików i folderów do kosza | ✔ | ✔ | ✔ | |||
Przywracanie plików i folderów z kosza | ✔ | ✔ | ✔ | |||
Opróżnianie kosza | ✔ | ✔ | ||||
Trwałe usuwanie pliku lub folderu | ✔ | ✔ | ||||
usuwać pliki i foldery na dysku współdzielonym [*], | ✔ |
Możliwości
Zasób files
zawiera zbiór pól capabilities
z wartościami logicznymi, które określają, czy na pliku można wykonać działanie.
Aby sprawdzić możliwości, wywołaj metodę files.get
z parametrami fileId
i fields
ustawionymi na capabilities
. Więcej informacji o zwracaniu pól za pomocą parametru fields
znajdziesz w artykule Zwracanie określonych pól pliku.
W przypadku wszystkich plików wypełniane są te pola:
capabilities.canTrash
: czy bieżący użytkownik może przenieść ten plik do kosza.capabilities.canUntrash
: czy bieżący użytkownik może przywrócić ten plik z kosza.capabilities.canDelete
: czy bieżący użytkownik może usunąć ten plik.capabilities.canRemoveChildren
: określa, czy bieżący użytkownik może usuwać dzieci z tego folderu. Zwraca wartość false, gdy element nie jest folderem.
Te pola są wypełniane tylko w przypadku plików znajdujących się na dysku współdzielonym:
capabilities.canTrashChildren
: określa, czy bieżący użytkownik może przenieść do kosza elementy podrzędne tego folderu. Zwraca wartość false, gdy element nie jest folderem.capabilities.canDeleteChildren
: określa, czy bieżący użytkownik może usuwać podfoldery tego folderu. Ma wartość false (fałsz), jeśli element nie jest folderem.
Limity liczby plików i folderów
Pliki i foldery na Dysku oraz foldery na dysku współdzielonym mają pewne limity miejsca.
Po osiągnięciu limitu elementów jedynym sposobem na zwiększenie miejsca jest trwałe usunięcie elementów lub użycie innego konta. Przenoszenie plików do kosza nie wystarczy, aby zwolnić miejsce.
Więcej informacji o limitach dotyczących plików i folderów znajdziesz w tych artykułach:
Powiązane artykuły
- Usuwanie plików z Dysku Google
- Różnice między interfejsami API a dyskami współdzielonymi i interfejsami My Drive API
- Role i uprawnienia