Liệt kê danh sách file trong folder Google Drive ra file Excel

1
210

Liệt kê danh sách file trong folder Google Drive ra file Excel mà hôm nay DTG chia sẻ tới các bạn là một cách làm không tốn nhiều công sức. Chắc hẳn bạn đã biết rằng khi mình lưu trữ trên Google Drive thì việc quản lý dữ liệu là một công việc khá khó khăn. Đặc biệt là đối với những bạn thường lưu trữ nhiều file khác nhau với dung lượng file lớn. Chính vì thế việc tạo ra một danh sách các file có trong một thư mục khiến công việc ấy trở nên dễ dàng hơn nhiều. Và trong bài viết này mình sẽ chia sẻ phương pháp đó cho các bạn. Hướng dẫn tải toàn bộ Folder trên Google Drive không cần nén 

Hướng dẫn Liệt kê danh sách file trong folder Google Drive

Vì để trực quan hơn cho các bạn nên mình đã làm một video hướng dẫn rất chi tiết. Mời các bạn xem ở bên dưới.

Mã đoạn code:

// Hướng dẫn liệt kê danh sách file trong folder Google Drive - GDrive.VIP

// GDRIVE.VIP: Dán ID folder vào dưới
var folderId = 'ID Folder';

// Function 1: Liệt kê tất cả folder và viết vào sheet.
function listFolers(){
getFolderTree(folderId, false);
};

// Function 2.
function listAll(){
getFolderTree(folderId, true);
};

// Lấy Folder Tree
function getFolderTree(folderId, listAll) {
try {

// Lấy folder id
var parentFolder = DriveApp.getFolderById(folderId);

// Khởi tạo sheet
var file, data, sheet = SpreadsheetApp.getActiveSheet();
sheet.clear();
sheet.appendRow(["Đường dần đầy dủ", "Tên", "Ngày", "URL", "Cập nhập lần cuối", "Mô tả", "Kích thước"]);

// Lấy file và folder
getChildFolders(parentFolder.getName(), parentFolder, data, sheet, listAll);
} catch (e) {
Logger.log(e.toString());
}
};

// Lấy danh sách file, folder và metadata của chúng ở chế độ đệ quy
function getChildFolders(parentName, parent, data, sheet, listAll) {
var childFolders = parent.getFolders();

// Liệt kê folder con
while (childFolders.hasNext()) {
var childFolder = childFolders.next();

// Logger.log("Folder Name: " + childFolder.getName());
data = [
parentName + "/" + childFolder.getName(),
childFolder.getName(),
childFolder.getDateCreated(),
childFolder.getUrl(),
childFolder.getLastUpdated(),
childFolder.getDescription(),
childFolder.getSize()
];

// Ghi
sheet.appendRow(data);

// Liệt kê các file trong folder
var files = childFolder.getFiles();
while (listAll & files.hasNext()) {
var childFile = files.next();

// Logger.log("File Name: " + childFile.getName());
data = [
parentName + "/" + childFolder.getName() + "/" + childFile.getName(),
childFile.getName(),
childFile.getDateCreated(),
childFile.getUrl(),
childFile.getLastUpdated(),
childFile.getDescription(),
childFile.getSize()
];

// Ghi
sheet.appendRow(data);
}

// Gọi đệ quy của folder con
getChildFolders(parentName + "/" + childFolder.getName(), childFolder, data, sheet, listAll);
}
};
ĐỂ LẠI BÌNH LUẬN