ทิ้งหรือลบไฟล์และโฟลเดอร์

คุณนำไฟล์และโฟลเดอร์ใน Google ไดรฟ์ออกจากทั้งไดรฟ์ของฉันและไดรฟ์ที่แชร์ได้ โดยทำได้ 2 วิธี ได้แก่ ทิ้ง หรือลบ

คุณสามารถย้ายไฟล์และโฟลเดอร์ไปยังถังขยะ แล้วกู้คืนได้ (ภายใน 30 วันหลังจากย้ายไปยังถังขยะ) การลบไฟล์และโฟลเดอร์จะเป็นการนำไฟล์และโฟลเดอร์ออกจากไดรฟ์อย่างถาวร หากคุณย้ายไปถังขยะ กู้คืน หรือลบไฟล์หรือโฟลเดอร์หลายรายการแบบถาวรในคราวเดียว อาจใช้เวลาสักระยะจึงจะสังเกตเห็นการเปลี่ยนแปลงในระบบ

คู่มือนี้จะอธิบายวิธีทิ้งไฟล์ในไดรฟ์

ใช้พารามิเตอร์ฟิลด์

หากต้องการระบุช่องที่จะแสดงผลในการตอบกลับ คุณสามารถตั้งค่าfields พารามิเตอร์ระบบ ด้วยเมธอดใดก็ได้ของทรัพยากร files หากไม่ระบุพารามิเตอร์ fields เซิร์ฟเวอร์จะแสดงผลชุดฟิลด์เริ่มต้นที่เฉพาะเจาะจงสำหรับเมธอด เช่น เมธอด list จะแสดงเฉพาะช่อง kind, id, name, mimeType และ resourceKey สำหรับแต่ละไฟล์ หากต้องการแสดงฟิลด์อื่น ให้ดูแสดงฟิลด์ที่เฉพาะเจาะจง

ถังขยะ

หากต้องการนำไฟล์ในไดรฟ์ออก คุณสามารถย้ายไฟล์ไปไว้ในถังขยะได้ ระบบจะลบไฟล์ในถังขยะโดยอัตโนมัติหลังจากผ่านไป 30 วัน คุณสามารถกู้คืนไฟล์จาก ถังขยะได้ก่อนระยะเวลา 30 วัน

มีเพียงเจ้าของไฟล์เท่านั้นที่ย้ายไฟล์ไปถังขยะได้ และผู้ใช้รายอื่นจะดูไฟล์ในถังขยะของเจ้าของไม่ได้ หากพยายามย้ายไฟล์ที่คุณไม่ได้เป็นเจ้าของไปที่ถังขยะ คุณจะได้รับข้อผิดพลาด insufficientFilePermissions ดูข้อมูลเพิ่มเติมได้ที่สิทธิ์

หากต้องการยืนยันว่าคุณเป็นเจ้าของไฟล์ ให้เรียกใช้เมธอด get ในแหล่งข้อมูล files โดยตั้งค่าพารามิเตอร์ fileId path และพารามิเตอร์ fields เป็นฟิลด์บูลีน ownedByMe ระบบจะไม่แสดงข้อมูลในช่องownedByMeสำหรับไฟล์ในไดรฟ์ที่แชร์เนื่องจากไฟล์เหล่านั้นเป็นของไดรฟ์ที่แชร์ ไม่ใช่ของผู้ใช้แต่ละราย ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์ fields ได้ที่ใช้พารามิเตอร์ฟิลด์

หากคุณไม่ใช่เจ้าของไฟล์แต่ยังต้องการสำเนาของไฟล์ที่ถูกทิ้ง ให้ทำอย่างใดอย่างหนึ่งต่อไปนี้

  • ทำสำเนาของไฟล์
  • ติดต่อเจ้าของไฟล์เพื่อขอให้กู้คืนจากถังขยะ

ย้ายไฟล์ไปที่ถังขยะ

หากต้องการย้ายไฟล์ไปยังถังขยะ ให้ใช้เมธอด update ในทรัพยากร files โดยใช้พารามิเตอร์เส้นทาง fileId และตั้งค่าฟิลด์บูลีน 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 ของไฟล์ที่ต้องการ ทิ้ง

ระบุคุณสมบัติของไฟล์ในถังขยะ

เมื่อทิ้งไฟล์ คุณจะดึงข้อมูลพร็อพเพอร์ตี้เพิ่มเติมของไฟล์ได้ คุณสามารถใช้วิธี get ในแหล่งข้อมูล files ที่มีพารามิเตอร์เส้นทาง fileId และใช้ฟิลด์ที่ถูกนำไปไว้ในถังขยะต่อไปนี้ในพารามิเตอร์ fields ดูข้อมูลเพิ่มเติม เกี่ยวกับพารามิเตอร์ fields ได้ที่ใช้พารามิเตอร์ฟิลด์

ระบบจะระบุค่าในช่องต่อไปนี้สำหรับไฟล์ทั้งหมด

  • trashed: ไฟล์ถูกย้ายไปถังขยะหรือไม่ ไม่ว่าจะโดยตรงหรือจากโฟลเดอร์หลักที่ถูกย้ายไปถังขยะ โปรดทราบว่า ขณะที่การใช้ trashed กับเมธอด update จะตั้งค่าสถานะของไฟล์ แต่เมธอด get จะดึงข้อมูลสถานะของไฟล์
  • explicitlyTrashed: ไม่ว่าไฟล์จะถูกย้ายไปถังขยะอย่างชัดเจนหรือไม่ ซึ่งต่างจากการย้ายไปถังขยะแบบเรียกซ้ำ จากโฟลเดอร์หลัก

ระบบจะป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ที่อยู่ในไดรฟ์ที่แชร์เท่านั้น

  • trashedTime: เวลา ที่ย้ายรายการไปที่ถังขยะในรูปแบบวันที่และเวลา RFC 3339 หากคุณใช้ Drive API เวอร์ชัน 2 ก่อนหน้านี้ ฟิลด์นี้จะเรียกว่า trashedDate
  • trashingUser: หากมีการย้ายไฟล์ไปถังขยะอย่างชัดเจน ผู้ใช้ที่ย้ายไฟล์ไปถังขยะ

กู้คืนไฟล์จากถังขยะ

หากต้องการกู้คืนไฟล์จากถังขยะ ให้ใช้เมธอด update ในทรัพยากร files ที่มีพารามิเตอร์เส้นทาง fileId และตั้งค่า ฟิลด์บูลีน 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 ของไฟล์ที่ต้องการ ยกเลิกการทิ้ง

ล้างข้อมูลในถังขยะ

คุณสามารถลบไฟล์ในไดรฟ์ทั้งหมดที่ผู้ใช้ย้ายไปถังขยะอย่างถาวรได้โดยใช้วิธีการ emptyTrash ในแหล่งข้อมูล files หากต้องการล้างถังขยะของไดรฟ์ที่แชร์ คุณต้องตั้งค่าพารามิเตอร์การค้นหา driveId เป็นรหัสไดรฟ์ที่แชร์ด้วย

หากทำสำเร็จ เนื้อหา การตอบกลับจะมีออบเจ็กต์ JSON ที่ว่างเปล่า

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ fileId เพื่อลบไฟล์ทั้งหมดในถังขยะอย่างถาวร

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

ลบ

คุณลบไฟล์ในไดรฟ์อย่างถาวรได้โดยไม่ต้องย้ายไปที่ ถังขยะ หลังจากลบไฟล์แล้ว ทุกคนที่คุณแชร์ไฟล์ด้วยจะเสียสิทธิ์เข้าถึงไฟล์นั้น หากต้องการให้ผู้อื่นยังคงมีสิทธิ์เข้าถึงไฟล์ คุณสามารถโอน สิทธิ์การเป็นเจ้าของให้บุคคลอื่นก่อนลบได้

หากต้องการลบไฟล์ในไดรฟ์ที่แชร์ ผู้ใช้ต้องมีสิทธิ์ role=organizer ในโฟลเดอร์ ระดับบน หากคุณลบโฟลเดอร์ ระบบจะลบโฟลเดอร์ย่อยทั้งหมดที่ผู้ใช้เป็นเจ้าของด้วย ดูข้อมูลเพิ่มเติมได้ที่สิทธิ์

หากต้องการลบไฟล์ที่ผู้ใช้เป็นเจ้าของอย่างถาวรโดยไม่ต้องย้ายไปที่ถังขยะ ให้ใช้วิธี delete ในแหล่งข้อมูล files หากต้องการลบไฟล์ในไดรฟ์ที่แชร์ คุณต้องตั้งค่าพารามิเตอร์การค้นหาบูลีน supportsAllDrives เป็น true ด้วย โปรดดูข้อมูลเพิ่มเติมที่หัวข้อใช้การรองรับไดรฟ์ที่แชร์

หากทำสำเร็จ เนื้อหา การตอบกลับจะมีออบเจ็กต์ JSON ที่ว่างเปล่า

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ 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ที่ระบุความสามารถที่ผู้ใช้มีในไฟล์นี้

หากต้องการตรวจสอบความสามารถ ให้เรียกใช้เมธอด get ในทรัพยากร files ด้วยพารามิเตอร์เส้นทาง fileId และใช้ฟิลด์ capabilities ฟิลด์ใดฟิลด์หนึ่งต่อไปนี้ในพารามิเตอร์ fields ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์ fields ได้ที่ใช้พารามิเตอร์ฟิลด์

ระบบจะระบุค่าในช่องต่อไปนี้สำหรับไฟล์ทั้งหมด

  • capabilities.canTrash: ผู้ใช้ปัจจุบันย้ายไฟล์นี้ไปที่ถังขยะได้หรือไม่
  • capabilities.canUntrash: ผู้ใช้ปัจจุบันกู้คืนไฟล์นี้จากถังขยะได้หรือไม่
  • capabilities.canDelete: ผู้ใช้ปัจจุบันลบไฟล์นี้ได้หรือไม่
  • capabilities.canRemoveChildren: ผู้ใช้ปัจจุบันนำบุตรหลานออกจากโฟลเดอร์นี้ได้หรือไม่ ซึ่งจะเกิดขึ้นfalseเมื่อรายการไม่ใช่โฟลเดอร์

ระบบจะป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ที่อยู่ในไดรฟ์ที่แชร์เท่านั้น

  • capabilities.canTrashChildren: ผู้ใช้ปัจจุบันสามารถย้ายรายการย่อยของโฟลเดอร์นี้ไปที่ถังขยะได้หรือไม่ ซึ่งจะเกิดขึ้นfalse เมื่อรายการไม่ใช่โฟลเดอร์
  • capabilities.canDeleteChildren: ระบุว่าผู้ใช้ปัจจุบันลบรายการย่อยของโฟลเดอร์นี้ได้หรือไม่ ซึ่งจะเกิดขึ้นfalse เมื่อรายการไม่ใช่โฟลเดอร์

ขีดจำกัดของไฟล์และโฟลเดอร์

ไฟล์และโฟลเดอร์ในไดรฟ์ รวมถึงโฟลเดอร์ในไดรฟ์ที่แชร์มี โควต้าพื้นที่เก็บข้อมูลบางอย่าง

โดยทั่วไปหลังจากถึงขีดจำกัดของรายการแล้ว วิธีเดียวที่จะเพิ่มพื้นที่ว่างได้คือการลบอย่างถาวรหรือใช้บัญชีอื่น การย้ายไฟล์ไปที่ถังขยะไม่เพียงพอที่จะเพิ่มพื้นที่ว่าง

ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของไฟล์และโฟลเดอร์ได้ที่หัวข้อต่อไปนี้