Googleドライブ│フォルダ内のファイル名を一括リネーム!文字列を置換して自動変更する方法

Googleドライブ内のファイル名を変更したい時、同じパターンの文字列を含む複数のファイルを一括でリネームしたいと思ったことはありませんか?

この記事では、Google Apps Script(GAS)を使って、指定フォルダ内のファイル名を文字列置換で一括変更する方法をご紹介します。

目次

想定されるシーン

  • ファイル名の一部「sample」を「サンプル」に変更したい
  • 顧客名・日付・バージョン番号の更新など、同じ処理を複数のファイルにまとめて行いたい
  • 手動でリネームする手間をなくしたい

サンプルコード:文字列を置換してリネーム

以下のスクリプトでは、指定フォルダ内にあるすべてのファイル名のうち、特定の文字列を置換してリネームします。

function renameFile() {
  const folder_Id = "フォルダのID"; // 対象のフォルダIDを入力
  const folder = DriveApp.getFolderById(folder_Id);
  const files = folder.getFiles();

  while (files.hasNext()) {
    const file = files.next();
    const name = file.getName().replace("置換前の名前", "置換後の名前");
    file.setName(name);
  }
}

たとえばこう使います

const name = file.getName().replace("sample", "サンプル");

このようにすると、ファイル名に「sample」と含まれているすべてのファイルが、「サンプル」に置き換えられます。

応用ポイント

  • .replace().replaceAll() にすればすべての出現箇所を一括置換できます
    (ただしES2021以降のサポート)
  • ファイルの種類を判定して、特定の拡張子だけ変更するなどのフィルターも可能です

注意点

  • ファイル名の重複によるエラーが発生しないように注意してください
  • 大量のファイルを変更する場合は、テスト環境での動作確認を推奨します

まとめ

Googleドライブ上のファイル名を一括で編集したいとき、GASを使えば文字列置換で簡単に自動化可能です。

日常のちょっとした煩雑作業こそ、スクリプトで時短してみませんか?

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

WAZAの有料記事のサブスクリプションも開始しました。

目次