Created
February 20, 2020 04:03
-
-
Save edoan/181094b112b848404dd814d44b71369c to your computer and use it in GitHub Desktop.
Remove "Copy of" filename prefix when copying an entire folder from one Google Drive account to another Google Drive account
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* Need to copy an entire folder from one Google Drive account to another Google Drive account? | |
* 1. Right-click on original folder in Google Drive | |
* 2. Share with the destination Google account | |
* 3. Go into destination account's Google Drive | |
* 4. Find the shared folder under "Shared with me" | |
* 5. Select all the files (Ctrl-A / Cmd-A) | |
* 6. Right-click, Make a copy | |
* 7. Create a New Folder in destination account's Google Drive | |
* 8. Go to Recent | |
* 9. Select all recently copied files and move to the new folder | |
* 10. Great, except all the filenames begin with "Copy of"xxxxxx.txt | |
* 11. Create a new Apps Script, perhaps using Google Sheets, and use the below script to remove the "Copy of" filename prefix! | |
*/ | |
function fileRename() { | |
var folders = DriveApp.getFoldersByName('FOLDERNAME'); | |
var folder = folders.next(); | |
var files = folder.getFiles(); | |
while(files.hasNext()){ | |
var file = files.next() | |
var fileName = file.getName(); | |
if (fileName.indexOf('Copy of ') > -1) { | |
fileName= fileName.split('Copy of ')[1]; | |
file.setName(fileName); | |
}; | |
}; | |
} |
Thank you, it was really useful!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
That is an excellent script. Below is some updated code you can add to a gsheet script. It adds a menu item to execute the script to the gsheet menu bar and provides a popup box so you can enter the folder name that contains the files with "Copy to " that need to be fixed up.
function onOpen() {
var SS = SpreadsheetApp.getActiveSpreadsheet();
var ui = SpreadsheetApp.getUi();
ui.createMenu('Remove "Copy of" from start of file names in a folder')
.addItem('Start script', 'fileRename')
.addToUi();
};
function fileRename() {
var inputFolder = Browser.inputBox('Enter folder ID', Browser.Buttons.OK_CANCEL);
if (inputFolder === "") {
Browser.msgBox('Remove "Copy of" from the start of file names in this folder:');
return;
}
var folders = DriveApp.getFoldersByName(inputFolder);
var folder = folders.next();
var files = folder.getFiles();
var fileCnt=0;
var renamedCnt = 0;
while(files.hasNext()){
fileCnt++;
var file = files.next()
var fileName = file.getName();
if (fileName.indexOf('Copy of ') > -1) {
fileName= fileName.split('Copy of ')[1];
file.setName(fileName);
renamedCnt++;
};
};
SpreadsheetApp.getUi().alert('Removed "Copy of" from: '+renamedCnt+" Total Files Processed:"+fileCnt);
}