Trước đây mình đã có bài hướng dẫn chuyển dữ liệu giữa 2 tài khoản Google Drive thông qua dịch vụ Multcloud, các bạn có thể đọc lại tại đây. Nếu các bạn không tin tưởng khi cấp quyền truy cập cho ứng dụng bên thứ 3 thì hãy dùng ngay ứng dụng chính chủ có tên là Google Apps Script.
Để thực hiện trước tiên mình sẽ lấy ví dụ với 1 đường link được chia sẻ trên Google Drive: http://gg.gg/khodohoa hoặc 1 thư mục tương tự từ tài khoản Drive 2 mà bạn muốn chuyển sang tài khoản Drive 1.
Trước tiên bạn chia sẻ thư mục của Drive 2 cho Drive 1 bằng cách click phải chuột vào thư mục và chọn Share….
Nhập email cần share thư mục đó, đầy đủ domain @gmail, @xxx đằng sau nhé.
Sau đó bạn mở Drive 1 vừa được share lên, nhấn vào mục Shared with me, và ghi nhớ tên thư mục vừa được share đó.
Bước tiếp theo cũng trong Drive 1 đang đăng nhập, bạn mở đường link sau: Google Apps Script
Nhấn vào Start Scripting
Trong cửa sổ soạn thảo code, bạn xóa đoạn code có sẵn đi và copy đoạn code mới này vào
function duplicate() {
var sourceFolder = "khodohoa.vn Khóa Học"; //Thư mục được chia sẻ
var targetFolder = "Test Backup"; //Tên thư mục mới sẽ tạo và lưu trữ dữ liệu của bạn
var source = DriveApp.getFoldersByName(sourceFolder);
var target = DriveApp.createFolder(targetFolder);
if (source.hasNext()) {
copyFolder(source.next(), target);
}
}
function copyFolder(source, target) {
var folders = source.getFolders();
var files = source.getFiles();
while(files.hasNext()) {
var file = files.next();
file.makeCopy(file.getName(), target);
}
while(folders.hasNext()) {
var subFolder = folders.next();
var folderName = subFolder.getName();
var targetFolder = target.createFolder(folderName);
copyFolder(subFolder, targetFolder);
}
}
Trong đoạn code trên bạn chú ý đến dòng:
var sourceFolder = "khodohoa.vn Khóa Học"; //Thư mục được chia sẻ
var targetFolder = "Test Backup"; //Tên thư mục mới sẽ tạo và lưu trữ dữ liệu của bạn
Dòng đầu tiên bạn copy tên thư mục mà bạn vừa share lúc nãy từ Drive 2, mình ví dụ với thư mục được share ở đầu bài viết là khodohoa.vn Khóa Học
Dòng thứ 2 là tên thư mục bạn muốn đặt ở Drive 1. Bạn chỉ cần đặt tên script sẽ tự động tạo thư mục với tên đó cho bạn.
Sau đó lưu lại.
Để chạy script bạn tiến hành chọn Function là Duplicate sau đó nhấn vào nút Run.
Lúc này Google Apps Script sẽ yêu cầu được cấp quyền truy cập vào Drive của bạn. Bạn nhấn vào Review Permissions
Bạn lựa chọn Tài khoản Google cho Drive 1 (nếu trình duyệt bạn có đăng nhập nhiều hơn 1 tài khoản)
Nếu gặp cửa sổ này thì bạn đừng quá lo lắng, cứ nhấn vào nút Advanced
Và sau đó nhấn vào Go to xxxxx (Unsafe)
Và cuối cùng là nhấn Allow
Lúc này code sẽ chạy liên tục cho đến khi hoàn thành. Bạn cần giữ nguyên cửa sổ để script hoạt động, bạn đừng quá lo lắng vì quá trình copy rất là nhanh.
So sánh việc chuyển dữ liệu giữa các tài khoản Google Drive bằng Google Apps Script so với ứng dụng Multcloud và chức năng Make Copy mặc định của Google Drive
Ưu điểm:
- Tốc độ copy dữ liệu nhanh, có thể copy thư mục có nhiều cấp (Make copy chỉ copy được file và không copy được thư mục) nhanh hơn nhiều so với Multcloud
- App chính chủ từ Google nên khi cấp quyền truy cập vẫn an tâm hơn so với Multcloud
Nhược điểm:
- Hạn chế của Script và cả Make copy là trong ngày chỉ copy được dung lượng nhất định (đâu đó dưới 1TB mình không chắc chắn lắm).
Trên đây là hướng dẫn chuyển dữ liệu giữa các tài khoản Google Drive bằng Google Apps Script hy vọng sẽ giúp ích các bạn trong việc sao lưu dữ liệu cho các tài khoản của mình nhất là cho những bạn sở hữu tài khoản Google Drive Unlimited.