คุณนำไฟล์และโฟลเดอร์ Google ไดรฟ์ออกจากทั้งไดรฟ์ของฉันและไดรฟ์ที่แชร์ได้ โดยทำได้ 2 วิธี ได้แก่ "ถังขยะ" หรือ "ลบ"
คุณสามารถย้ายไฟล์และโฟลเดอร์ไปยังถังขยะแล้วกู้คืนได้ (ภายใน 30 วันนับจากวันที่ย้าย) การลบไฟล์และโฟลเดอร์จะเป็นการนำไฟล์และโฟลเดอร์ออกจากไดรฟ์อย่างถาวร หากคุณทิ้ง กู้คืน หรือลบไฟล์หรือโฟลเดอร์หลายรายการแบบถาวรในคราวเดียว อาจใช้เวลาสักระยะจึงจะสังเกตเห็นการเปลี่ยนแปลงในระบบ
คู่มือนี้จะอธิบายวิธีกำจัดไฟล์ในไดรฟ์
ถังขยะ
หากต้องการนำไฟล์ในไดรฟ์ออก ให้ย้ายไฟล์เหล่านั้นไปที่ถังขยะ ระบบจะลบไฟล์ในถังขยะโดยอัตโนมัติ หลังจากผ่านไป 30 วัน คุณสามารถกู้คืนไฟล์จากถังขยะได้ก่อนสิ้นสุดระยะเวลา 30 วัน
เฉพาะเจ้าของไฟล์เท่านั้นที่ทิ้งไฟล์ได้ และผู้ใช้รายอื่นจะดูไฟล์ในถังขยะของเจ้าของไม่ได้ หากพยายามทิ้งไฟล์ที่คุณไม่ได้เป็นเจ้าของ คุณจะได้รับข้อผิดพลาด insufficientFilePermissions
ดูข้อมูลเพิ่มเติมได้ที่สิทธิ์
หากต้องการยืนยันว่าคุณเป็นเจ้าของไฟล์ ให้เรียกใช้เมธอด files.get
ที่มี fileId
และตั้งค่าพารามิเตอร์ fields
เป็นฟิลด์บูลีน ownedByMe
ระบบจะไม่ป้อนข้อมูลในช่อง ownedByMe
สำหรับไฟล์ในไดรฟ์ที่แชร์ เนื่องจากไฟล์เหล่านั้นเป็นของไดรฟ์ที่แชร์ ไม่ใช่ของผู้ใช้แต่ละราย ดูข้อมูลเพิ่มเติมเกี่ยวกับการแสดงฟิลด์โดยใช้พารามิเตอร์ fields
ได้ที่แสดงฟิลด์ที่เฉพาะเจาะจงสำหรับไฟล์
หากคุณไม่ใช่เจ้าของไฟล์แต่ยังต้องการสำเนาของไฟล์ที่ทิ้ง ให้ทำอย่างใดอย่างหนึ่งต่อไปนี้
- ทำสำเนาไฟล์
- โปรดติดต่อเจ้าของให้กู้คืนไฟล์จากถังขยะ
ย้ายไฟล์ไปที่ถังขยะ
หากต้องการย้ายไฟล์ไปที่ถังขยะ ให้ใช้เมธอด files.update
และตั้งค่าฟิลด์ trashed
เป็น True
หากต้องการทิ้งไฟล์ในไดรฟ์ที่แชร์ คุณต้องตั้งค่าพารามิเตอร์การค้นหา supportsAllDrives
เป็น True
ด้วย โปรดดูข้อมูลเพิ่มเติมที่หัวข้อใช้การสนับสนุนไดรฟ์ที่แชร์
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ของทรัพยากร files
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ fileId
เพื่อทําเครื่องหมายไฟล์ว่าอยู่ในถังขยะ
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;
แทนที่ FILE_ID ด้วย fileId
ของไฟล์ที่ต้องการทิ้ง
กำหนดคุณสมบัติของไฟล์ในถังขยะ
เมื่อไฟล์อยู่ในถังขยะ คุณจะเรียกข้อมูลพร็อพเพอร์ตี้ files
เพิ่มเติมได้ คุณสามารถใช้เมธอด files.get
และใส่ช่องต่อไปนี้ในพารามิเตอร์ fields
ดูข้อมูลเพิ่มเติมได้ที่แสดงฟิลด์ที่เฉพาะเจาะจงสำหรับไฟล์
ระบบจะเติมข้อมูลในฟิลด์ต่อไปนี้สำหรับไฟล์ทั้งหมด
trashed
: ไฟล์ถูกทิ้งหรือไม่ ไม่ว่าจะทิ้งโดยตรงหรือจากโฟลเดอร์หลักที่ทิ้ง โปรดทราบว่าในขณะที่ใช้trashed
กับเมธอดfiles.update
จะตั้งค่าสถานะของไฟล์ แต่เมธอดfiles.get
จะดึงสถานะของไฟล์ขึ้นมาexplicitlyTrashed
: ระบุว่าไฟล์ถูกทิ้งอย่างชัดเจนจากโฟลเดอร์หลัก ซึ่งต่างจากการทิ้งซ้ำๆ ในถังขยะหรือไม่
ระบบจะป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ที่อยู่ในไดรฟ์ที่แชร์เท่านั้น
trashedTime
: เวลาที่มีการทิ้งรายการในรูปแบบวันที่และเวลา RFC 3339 หากคุณใช้ Drive API เวอร์ชัน 2 เวอร์ชันเก่า ช่องนี้จะเรียกว่าtrashedDate
trashingUser
: หากไฟล์ถูกทิ้งอย่างชัดแจ้ง ผู้ใช้ที่ทิ้งไฟล์
กู้คืนไฟล์จากถังขยะ
หากต้องการกู้คืนไฟล์จากถังขยะ ให้ใช้เมธอด files.update
และตั้งค่าฟิลด์ trashed
เป็น False
หากต้องการยกเลิกไฟล์ในไดรฟ์ที่แชร์ คุณจะต้องตั้งค่าพารามิเตอร์การค้นหา supportsAllDrives
เป็น True
ด้วย ดูข้อมูลเพิ่มเติมได้ที่การใช้การรองรับไดรฟ์ที่แชร์
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ของทรัพยากร files
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ fileId
เพื่อทำเครื่องหมายไฟล์เป็นยกเลิกการทิ้ง
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;
แทนที่ FILE_ID ด้วย fileId
ของไฟล์ที่ต้องการยกเลิกการย้าย
ล้างข้อมูลในถังขยะ
คุณสามารถลบไฟล์ในไดรฟ์ทั้งหมดที่ผู้ใช้ย้ายไปที่ถังขยะออกอย่างถาวรได้โดยใช้วิธี files.emptyTrash
หากต้องการล้างถังขยะของไดรฟ์ที่แชร์ คุณต้องตั้งค่าพารามิเตอร์การค้นหา driveId
เป็นรหัสไดรฟ์ที่แชร์ด้วย
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ว่าง
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ fileId
เพื่อลบไฟล์ทั้งหมดในถังขยะ
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
ลบ
คุณสามารถลบไฟล์ในไดรฟ์อย่างถาวรได้โดยไม่ต้องย้ายไฟล์ไปที่ถังขยะ หลังจากลบไฟล์แล้ว ทุกคนที่คุณแชร์ไฟล์ด้วยจะเสียสิทธิ์เข้าถึงไฟล์นั้น หากต้องการให้ผู้อื่นยังคงเข้าถึงไฟล์ได้ คุณสามารถโอนการเป็นเจ้าของให้กับบุคคลอื่นก่อนที่จะลบ
หากต้องการลบไฟล์ในไดรฟ์ที่แชร์ ผู้ใช้ต้องมี role=organizer
ในโฟลเดอร์หลัก หากคุณลบโฟลเดอร์ ระบบจะลบโฟลเดอร์ย่อยทั้งหมดที่ผู้ใช้เป็นเจ้าของด้วย ดูข้อมูลเพิ่มเติมได้ที่สิทธิ์
หากต้องการลบไฟล์ของผู้ใช้อย่างถาวรโดยไม่ย้ายไฟล์ไปยังถังขยะ ให้ใช้วิธี files.delete
หากต้องการลบไฟล์ในไดรฟ์ที่แชร์ คุณต้องตั้งค่าพารามิเตอร์การค้นหา supportsAllDrives
เป็น True
ด้วย โปรดดูข้อมูลเพิ่มเติมที่หัวข้อใช้การสนับสนุนไดรฟ์ที่แชร์
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ว่าง
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ fileId
เพื่อลบไฟล์
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
แทนที่ FILE_ID ด้วย fileId
ของไฟล์ที่ต้องการลบ
สิทธิ์
ตารางต่อไปนี้แสดงสิทธิ์ของบทบาทที่จำเป็นต่อการดำเนินการแต่ละรายการ ดูรายการบทบาททั้งหมดและการดำเนินการที่แต่ละบทบาทอนุญาตได้ที่บทบาทและสิทธิ์
การดำเนินการที่ได้รับอนุญาต | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
---|---|---|---|---|---|---|
ย้ายไฟล์และโฟลเดอร์ไปยังถังขยะ | ✔ | ✔ | ✔ | |||
กู้คืนไฟล์และโฟลเดอร์จากถังขยะ | ✔ | ✔ | ✔ | |||
ล้างข้อมูลในถังขยะ | ✔ | ✔ | ||||
ลบไฟล์หรือโฟลเดอร์อย่างถาวร | ✔ | ✔ | ||||
ลบไฟล์และโฟลเดอร์ในไดรฟ์ที่แชร์ [*] | ✔ |
ความสามารถ
ทรัพยากร files
มีคอลเล็กชันช่อง capabilities
บูลีนที่ใช้เพื่อระบุว่าดำเนินการกับไฟล์ได้หรือไม่
หากต้องการตรวจสอบความสามารถ ให้เรียกใช้เมธอด files.get
ที่มี fileId
และตั้งค่าพารามิเตอร์ fields
เป็นช่อง capabilities
ดูข้อมูลเพิ่มเติมเกี่ยวกับการแสดงผลฟิลด์โดยใช้พารามิเตอร์ fields
ได้ที่แสดงผลฟิลด์ที่เฉพาะเจาะจงสำหรับไฟล์
ระบบจะป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ทั้งหมด
capabilities.canTrash
: ผู้ใช้ปัจจุบันย้ายไฟล์นี้ไปยังถังขยะได้หรือไม่capabilities.canUntrash
: ผู้ใช้ปัจจุบันจะกู้คืนไฟล์นี้จากถังขยะได้หรือไม่capabilities.canDelete
: ผู้ใช้ปัจจุบันจะลบไฟล์นี้ได้หรือไม่capabilities.canRemoveChildren
: ผู้ใช้ปัจจุบันนําโฟลเดอร์ย่อยออกจากโฟลเดอร์นี้ได้หรือไม่ ซึ่งจะเป็นเท็จเมื่อรายการไม่ใช่โฟลเดอร์
ระบบจะป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ที่อยู่ในไดรฟ์ที่แชร์เท่านั้น
capabilities.canTrashChildren
: ผู้ใช้ปัจจุบันสามารถทิ้งโฟลเดอร์ย่อยของโฟลเดอร์นี้ได้หรือไม่ ค่าจะเป็นเท็จเมื่อรายการไม่ใช่โฟลเดอร์capabilities.canDeleteChildren
: ผู้ใช้ปัจจุบันจะลบโฟลเดอร์ย่อยของโฟลเดอร์นี้ได้หรือไม่ ค่าจะเป็นเท็จเมื่อรายการไม่ใช่โฟลเดอร์
ขีดจำกัดของไฟล์และโฟลเดอร์
ไฟล์และโฟลเดอร์ในไดรฟ์ รวมถึงโฟลเดอร์ในไดรฟ์ที่แชร์มีขีดจำกัดของพื้นที่เก็บข้อมูล
โดยทั่วไปแล้ว หลังจากถึงขีดจำกัดรายการแล้ว วิธีเดียวที่จะเพิ่มพื้นที่ว่างได้คือลบรายการออกอย่างถาวรหรือใช้บัญชีอื่น การย้ายไฟล์ไปที่ถังขยะไม่เพียงพอที่จะเพิ่มพื้นที่ว่าง
ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของไฟล์และโฟลเดอร์ได้ที่หัวข้อต่อไปนี้