Cara Copy Folder di Google Drive
Halo teman-teman,
Pernah kesulitan menyalin seluruh isi folder Google Drive ke folder lain tanpa ribet? Nah, di artikel ini saya akan membagikan cara praktis membuat aplikasi web (web app) menggunakan Google Apps Script yang memungkinkan Anda menyalin folder hanya dengan memasukkan ID sumber dan ID tujuan.
Fitur Aplikasi Web Ini
- Input folder ID sumber
- Input folder ID tujuan
- Copy folder secara rekursif (termasuk subfolder dan file di dalamnya)
- Menampilkan notifikasi berhasil
- Sudah dilengkapi tampilan user-friendly dan loading spinner
Bagaimana Cara Kerjanya?
Begitu Anda deploy sebagai web app, cukup buka URL web app, masukkan ID folder sumber dan ID folder tujuan, lalu klik Copy Folder. Script akan membuat folder baru di lokasi tujuan dan menyalin seluruh isinya. Sangat praktis untuk backup maupun duplikasi folder.
Source Code Apps Script
function doGet() { return HtmlService.createHtmlOutputFromFile('Index'); } function copyFolder(sourceId, destId) { const sourceFolder = DriveApp.getFolderById(sourceId); const destFolder = DriveApp.getFolderById(destId); const newFolder = destFolder.createFolder(sourceFolder.getName() + ' - Copy'); copyContents_(sourceFolder, newFolder); return newFolder.getUrl(); } function copyContents_(source, target) { const files = source.getFiles(); while (files.hasNext()) { const file = files.next(); file.makeCopy(file.getName(), target); } const folders = source.getFolders(); while (folders.hasNext()) { const folder = folders.next(); const newSub = target.createFolder(folder.getName()); copyContents_(folder, newSub); } }
File HTML (Index.html)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Copy Folder Google Drive</title> <style> body { font-family: Arial, sans-serif; background: #f7f7f7; } .container { max-width: 600px; margin: 40px auto; padding: 20px; background: #fff; border-radius: 8px; box-shadow: 0 0 10px rgba(0,0,0,0.1); } label { font-weight: bold; } input, button { width: 100%; margin-top: 8px; padding: 8px; border-radius: 4px; border: 1px solid #ccc; } button { background: #28a745; color: #fff; cursor: pointer; } button:hover { background: #218838; } .spinner { display: none; margin: 10px auto; } .result { margin-top: 15px; background: #d4edda; color: #155724; padding: 10px; border-radius: 4px; display: none; } </style> </head> <body> <div class="container"> <h2>Copy Folder Google Drive</h2> <label for="source">Folder ID Sumber:</label> <input type="text" id="source" placeholder="Masukkan folder ID sumber"> <label for="dest">Folder ID Tujuan:</label> <input type="text" id="dest" placeholder="Masukkan folder ID tujuan"> <button onclick="copyFolder()">Copy Folder</button> <div class="spinner">⏳ Sedang diproses...</div> <div class="result" id="result"></div> </div> <script> function copyFolder() { const source = document.getElementById('source').value; const dest = document.getElementById('dest').value; document.querySelector('.spinner').style.display = 'block'; document.getElementById('result').style.display = 'none'; google.script.run.withSuccessHandler(function(url) { document.querySelector('.spinner').style.display = 'none'; const result = document.getElementById('result'); result.innerHTML = '✅ Folder berhasil disalin ke: <a href="' + url + '" target="_blank">' + url + '</a>'; result.style.display = 'block'; }).copyFolder(source, dest); } </script> </body> </html>
Cara Deploy
- Buka Google Apps Script Editor
- Tambahkan file HTML bernama
Index
seperti di atas - Paste juga fungsi
doGet
dancopyFolder
di file kode utama (Code.gs) - Publish > Deploy as web app
- Set akses Anyone (public) agar bisa diakses siapa saja
- Copy URL Web App dan jalankan
Penutup
Dengan script ini, Anda tidak perlu lagi meng-copy file satu per satu di Google Drive. Cukup satu klik, semua beres! Selamat mencoba, semoga bermanfaat, dan jangan lupa kunjungi www.sketzhbook.com untuk artikel menarik lainnya!
Post a Comment for "Cara Copy Folder di Google Drive"
Post a Comment