Googleドライブのファイルを整理するためのスクリプトについて
この記事では、Googleドライブにアップロードしたファイルを整理するために、特定の拡張子を持つファイルを指定したフォルダに移動させるGoogle Apps Script(GAS)のコードを紹介しています。
ファイル拡張子を指定する方法は他にもありますが、この記事では基本的なコピー&ペーストで使用できる簡単な方法に焦点を当てています。
もし、指定するファイル拡張子を1つにしたい場合は、コードの17行目から31行目を削除することで対応できます。
//GoogleDriveのルートフォルダにある特定の拡張子ファイルを、指定したフォルダに移動する
function moveRootFilesToFolder() {
//移動先のGoogleドライブのフォルダID(URL欄に表示されるIDを記入)
const moveToFolderId = '**********';
//Googleドライブのルートフォルダから存在する全ファイルを取得
const files = DriveApp.getRootFolder().getFiles();
//取得した全ファイルを繰り返し処理
while(files.hasNext()){
//ファイルデータを取得し、ファイルタイプを取得
let file = files.next();
let fileType = file.getMimeType();
//ファイルタイプがjpgと判定した場合に、移動先のフォルダに移動
if(fileType.indexOf('jpg')>0){
file.moveTo(DriveApp.getFolderById(moveToFolderId));
console.log(file.getName() + 'を移動しました。');
}
//ファイルタイプがjpegと判定した場合に、移動先のフォルダに移動
if(fileType.indexOf('jpeg')>0){
file.moveTo(DriveApp.getFolderById(moveToFolderId));
console.log(file.getName() + 'を移動しました。');
}
//ファイルタイプがpngと判定した場合に、移動先のフォルダに移動
if(fileType.indexOf('png')>0){
file.moveTo(DriveApp.getFolderById(moveToFolderId));
console.log(file.getName() + 'を移動しました。');
}
//ファイルタイプがpdfと判定した場合に、移動先のフォルダに移動
if(fileType.indexOf('pdf')>0){
file.moveTo(DriveApp.getFolderById(moveToFolderId));
console.log(file.getName() + 'を移動しました。');
}
}
}
スクリプトの構成
moveRootFilesToFolder()
関数: この関数がメインの処理を行います。moveToFolderId
変数: 移動先のGoogleドライブのフォルダIDを設定します。URL欄に表示されるIDを記入してください。DriveApp.getRootFolder().getFiles()
: Googleドライブのルートフォルダにあるすべてのファイルを取得します。while(files.hasNext())
ループ: 取得したすべてのファイルに対して繰り返し処理を行います。file.getMimeType()
: ファイルのMIMEタイプ(ファイルの種類)を取得します。if(fileType.indexOf('jpg')>0)
など: ファイルタイプが指定した拡張子(jpg、jpeg、png、pdf)であるかどうかを判定し、該当する場合にファイルを移動します。file.moveTo(DriveApp.getFolderById(moveToFolderId))
: ファイルを指定したフォルダに移動します。console.log(file.getName() + 'を移動しました。')
: ログに移動したファイルの名前を出力します。
スクリプトの使用方法
- Google Apps Scriptエディタを開きます。
- 上記のコードをコピーして、スクリプトエディタに貼り付けます。
moveToFolderId
変数に、移動先のフォルダIDを設定します。- 必要に応じて、移動対象とするファイルの拡張子を
if
文で指定します。 - スクリプトを保存し、実行します。
このスクリプトを使用することで、Googleドライブのファイルを効率的に整理し、目的のファイルを見つけやすくすることができます。