Gmailのメールをサイズで並べ替えるにはどうすればよいですか?


55

Googleは、Gmailアカウントの空き容量がほとんどないことを警告し始めました。アカウント内の消費可能な大きなメールを識別するために、サイズでメッセージをソートするにはどうすればよいですか

回答:


34

これは現時点では不可能です。検索演算子リストを見ると、最も近い方法は添付ファイル付きのすべてのメールを除外することです。

別の方法は、IMAPクライアント(Thunderbirdなど)を使用してから、そのインターフェイスを使用することです。

その機能が必要なため、Gmailの機能提案サイトでニーズを伝えてください。

更新2014-02-20Gmailには現在size:およびlarger:演算子があります。


1
プログラマーなら、IMAPインターフェイスを使用してサイズで照会することもできます。それがwww.findbigmail.comのやり方です。
mm2001

7
これは現在可能です。以下のsteabertの投稿を参照してください: webapps.stackexchange.com/a/31431/19241
JonathanMumm

33

大きなメールを検索しなければならなかったとき、試してみる方法size:5000000を探して、検索用語を使用して5MBの大きなメールを見つけましたが、実際に私のすべてを見つけたようです5MBを超えるメール。別の数字を試してみましたが、一貫して機能しているようです。

この演算子は高度な検索オプションに記載されていませんが、私にとってはうまくいきました。:)

2012年11月現在、これは公式にサポートされている検索演算子です。構文は以前とは少し異なります。

5MBを超えるメールを見つけるには、次を検索するsize:5mか、larger:5m


1
これは実際に機能しています!
アレックス

私は知っています、素晴らしいですね!;)
スティーバート

3
これは現在、公式にサポートされている検索演算子です。
エール


9

これは正確な最速の方法ではありませんが、最初にファイルタイプで検索することができます。これにより、大きな電子メールを絞り込むことができます。たとえば、次のように、最初にビデオファイルタイプ(巨大)を検索できます。

has:attachment (*.mov || *.wmv || *.avi)

または次のようなzipファイル:

has:attachment (*.zip || *.rar || *.7z || *.tar.gz)

などなど。お役に立てば幸いです!


申し訳ありません...デイブ・ウェッブが同様のことを言っていたことに気づきませんでした。私の悪い。
jrc03c

6

FindBigMailは、すべての大きなクォータを殺すメッセージにラベルを付けます。ラベルで示されたサイズより大きいメッセージを表示するには、さまざまなラベルをクリックするだけです。


...またはこれは非常に回り道ですが、次のことができます:

  1. Gmailバックアップでメールをダウンロードします。個々の電子メールはEMLファイルとしてダウンロードされます。多くの電子メールプログラムはEMLファイルを読み取ることができます。それらは単なるテキストです。
  2. すべての大きなEMLファイルを削除します。すべてのEMLファイルをサイズでソートできます。
  3. バックアップをGmailに復元します。最初に、Gmailからメッセージを削除する必要があります。

Gmailバックアップを使用して、メールを新しいGmailアカウントに移行しています。また、私はいくつかのメールのタイムゾーンを修正しています。(タイムゾーンが異なるコンピューターからOutlook IMAPストアをインポートしたため、タイムゾーンが間違っていました。)


6

誰かがGoogle Docsでこれを行う方法を考え出しました。この方法の利点は、サードパーティに依存する必要がないことです。すべてがGoogleエコシステム内にとどまります。

GoogleドキュメントはGmailアカウントに接続し、メールボックスにあるすべてのメッセージのサイズを計算するという考え方です。かさばるメッセージ(サイズ> 1 MB)を見つけると、スプレッドシートにメモします。

シートにかさばるすべてのメッセージのリストが作成されたら、[サイズ]列でシートを並べ替えて大きなメッセージを見つけることができます。または、フィルターオプション(ファンネルアイコン)を使用して、特定の範囲内(5 MB <サイズ<10 MB)のメッセージを検索します。[表示]リンクをクリックして、Gmailで対応するメッセージを開き、セカンダリメールアドレスに転送し、プライマリインボックスから削除してスペースを回復します。

それがあなたが知っておくべきすべての理論です、今このプログラムを実行に移しましょう:

  1. Googleドキュメントアカウントでこのシートのコピーを作成します。
  2. 5〜10秒後に新しいGmailメニューがシートに表示されます。Gmailメニューから[キャンバスのリセット]を選択して、シートを初期化します。
  3. 承認画面を受け入れ、[アクセスを許可]を選択して、GoogleドキュメントがGmailの受信トレイにアクセスできるようにします。独自のGoogleドキュメントアカウントが独自のGmailアカウントへのアクセスを要求しているため、これは完全に安全です(ソースコードを参照)。
  4. アクセス許可が付与されたら、Gmailメニューから[メールボックスのスキャン]を選択して、スキャンプロセスを開始します。

Gmailのメールボックスの大きさによっては、最後のステップに時間がかかることがあるため、ゆっくりとくつろいでください。また、プログラムがスタックしている場合、または誤ってブラウザタブを閉じた場合、同じGoogleシートを開き、「メールボックスのスキャン」を再度選択すると、スクリプトは中断したところからスキャンを再開します。

注:試したことはありません。


1

それらをすべてOutlookにダウンロードし、サイズでメールを並べ替えます。IMAPを使用すると、それらのヘッダー(ヘッダーのみなど)がより速くダウンロードされるはずです。

Outlookが気に入らない場合は、OperaのメールIMAPクライアントを使用できます。GmailのIMAP実装で素晴らしい動作をします。(まあ、Google Appsではありませんが、それは別の話です。)




1

Googleスプレッドシートでメールボックスをサイズで並べ替えるのに役立つ簡単なGoogleスクリプトを次に示します。

function Scanning_Gmail_Mailbox() {    

  if (!UserProperties.getProperty("start")) {
    UserProperties.setProperty("start", "0");    
  }

  var start   = parseInt(UserProperties.getProperty("start"));
  var sheet   = SpreadsheetApp.getActiveSheet();
  var row     = getFirstRow();
  var ss      = SpreadsheetApp.getActiveSpreadsheet()

  for (;;) {

  ss.toast("Now finding all the big emails in your Gmail mailbox. Please wait..", "Scan Started", -1);

  // Find all Gmail messages that have attachments
  var threads = GmailApp.search('has:attachment larger:1m', start, 100);

  if (threads.length == 0) {
    ss.toast("Processed " + start + " messages.", "Scanning Done", -1); 
    return;
  }

  for (var i=0; i<threads.length; i++) {

    var messages = threads[i].getMessages();
    UserProperties.setProperty("start", ++start);

    for (var m=0; m<messages.length; m++) {      

      var size = getMessageSize(messages[m].getAttachments());      

     // If the total size of attachments is > 1 MB, log the messages
     // You can change this value as per requirement.

      if (size >= 1) {      
        sheet.getRange(row,1).setValue(Utilities.formatDate(messages[m].getDate(),"GMT", "yyyy-MM-dd"));
        sheet.getRange(row,2).setValue(messages[m].getFrom());        
        sheet.getRange(row,3).setValue(messages[m].getSubject());
        sheet.getRange(row,4).setValue(size);        
        var id = "https://mail.google.com/mail/u/0/#all/" + messages[m].getId();
        sheet.getRange(row,5).setFormula('=hyperlink("' + id + '", "View")'); 
        row++;
      }
    }            
  }    
  }
}


// Compute the size of email attachments in MB

function getMessageSize(att) {
  var size = 0;
  for (var i=0; i<att.length; i++) {
    //size += att[i].getBytes().length;
    size += att[i].getSize(); // Better and faster than getBytes()
  }
  // Wait for a second to avoid hitting the system limit
  Utilities.sleep(1000);
  return Math.round(size*100/(1024*1024))/100;
}

// Clear the content of the sheet

function Clear_Canvas() {
  UserProperties.setProperty("start", "0");
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.getRange(2,1,sheet.getLastRow(), 5).clearContent();
  SpreadsheetApp.getActiveSpreadsheet().toast("Choose Scan Mailbox to continue..", "Initialized", -1);
}

// Find the first empty row to start logging

function getFirstRow() {
  var sheet  = SpreadsheetApp.getActiveSpreadsheet();
  var values = sheet.getRange('A:A').getValues();
  var c = 2;
  while ( values[c][0] != "" ) {
    c++;
  }
  return c;
}

// Add a Gmail Menu to the spreadsheet

function onOpen() {  
  var menu = [    
    {name: "Reset Canvas", functionName: "Clear_Canvas"},
    {name: "Scan Mailbox", functionName: "Scanning_Gmail_Mailbox"}
  ];

  SpreadsheetApp.getActiveSpreadsheet().addMenu("Gmail", menu);
}

0

ありsearchgmailbysize.comサイズによって少なくとも添付ファイルであなたを一覧表示すると主張しています。個人的には、OAuthを使用していないため、資格情報でサイトを信頼しません。


私は使い捨てのアカウントで試してみました、そして宣伝として、それは...しかし、私は思う作品FindBigMail.comは(あなたが削除する前に、メールの内容を確認することができます。)より安全で使いやすいです
Leftium
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.