Google Driveの重複ファイルを自動削除するGASスクリプトの紹介

この記事の内容について、業務や開発でお困りの場合は個別に対応できます。

はじめに

Google Driveに大量のファイルを保存していると、同じ名前の重複ファイルが増えてしまうことがある。これが原因でディスクスペースが無駄に消費され、管理が煩雑になることもある。本記事では、Google Apps Script(GAS)を用いてGoogle Drive内の重複ファイルを自動的に削除するスクリプトを紹介する。

スクリプトの概要

このスクリプトは指定したフォルダ内の重複ファイルを検出し、重複しているファイルのうち最初の一つを残して他を削除する。スクリプトの実行により、ディスクスペースの節約とファイル管理の効率化を図ることができる。

スクリプトの説明

以下が重複ファイルを削除するためのスクリプトである。

function deleteDuplicateFilesKeepOne(folder) {
  const files = folder.getFiles();
  const fileNames = new Map();

  while (files.hasNext()) {
    const file = files.next();
    const name = file.getName();

    if (fileNames.has(name)) {
      file.setTrashed(true);
      Logger.log('重複ファイルを削除しました: ' + name);
    } else {
      fileNames.set(name, file.getId());
    }
  }
}

スクリプトの詳細解説

  1. ファイルの取得: folder.getFiles()メソッドを使用して、指定したフォルダ内の全てのファイルを取得する。
  2. 重複ファイルの検出: Mapオブジェクトを使用して、ファイル名をキーとして保持する。ファイル名が既に存在する場合は重複と判断する。
  3. 重複ファイルの削除: 重複ファイルをsetTrashed(true)メソッドを使用して削除する。これにより、ゴミ箱に移動される。


ブログ記事のタイトルと構成を以下のように提案する。

タイトル: Google Driveの重複ファイルを自動削除するGASスクリプトの紹介


はじめに

Google Driveに大量のファイルを保存していると、同じ名前の重複ファイルが増えてしまうことがある。これが原因でディスクスペースが無駄に消費され、管理が煩雑になることもある。本記事では、Google Apps Script(GAS)を用いてGoogle Drive内の重複ファイルを自動的に削除するスクリプトを紹介する。


スクリプトの概要

このスクリプトは指定したフォルダ内の重複ファイルを検出し、重複しているファイルのうち最初の一つを残して他を削除する。スクリプトの実行により、ディスクスペースの節約とファイル管理の効率化を図ることができる。


スクリプトの説明

以下が重複ファイルを削除するためのスクリプトである。

function deleteDuplicateFilesKeepOne(folder) {
  const files = folder.getFiles();
  const fileNames = new Map();

  while (files.hasNext()) {
    const file = files.next();
    const name = file.getName();

    if (fileNames.has(name)) {
      file.setTrashed(true);
      Logger.log('重複ファイルを削除しました: ' + name);
    } else {
      fileNames.set(name, file.getId());
    }
  }
}

function main() {
  const folderId = 'YOUR_FOLDER_ID';  // フォルダIDをここに入力
  const folder = DriveApp.getFolderById(folderId);
  deleteDuplicateFilesKeepOne(folder);
}

スクリプトの詳細解説

  1. ファイルの取得: folder.getFiles()メソッドを使用して、指定したフォルダ内の全てのファイルを取得する。
  2. 重複ファイルの検出: Mapオブジェクトを使用して、ファイル名をキーとして保持する。ファイル名が既に存在する場合は重複と判断する。
  3. 重複ファイルの削除: 重複ファイルをsetTrashed(true)メソッドを使用して削除する。これにより、ゴミ箱に移動される。

実際の使用方法

  1. Google Apps Scriptの設定:
    • Google Driveを開き、新規 > その他 > Google Apps Scriptを選択する。
    • 新しいプロジェクトを作成し、上記のスクリプトをコピー&ペーストする。
    • フォルダIDを取得して、スクリプト内でフォルダを指定する。
  2. スクリプトの実行:
    • スクリプトエディタで実行ボタンをクリックし、スクリプトを実行する。
    • Googleの認証を求められる場合は、必要な権限を許可する。
  3. 確認:
    • スクリプト実行後、指定したフォルダ内の重複ファイルが削除されていることを確認する。

ZIDOOKA!

この記事の内容について、対応できます

この記事に関連する技術トラブルや開発上の問題について個別対応を行っています。

個別対応は3,000円〜 内容・工数により事前にお見積りします
最後までお読みいただきありがとうございました

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

AI活用に関するポリシー

当サイトでは、記事の執筆補助にAIを活用する場合がありますが、全面的な委任は行いません。