GNU/Linux >> Belajar Linux >  >> Linux

Hapus dari mailq di mana subjek cocok

Solusi 1:

Dengan instalasi postfix biasa, email akan berada di /var/spool/postfix. Ada beberapa antrian. Anda ingin menghentikan postfix sehingga Anda dapat menggunakan postsuper dengan aman untuk menghapus email. Skrip singkat ini akan menghapus semua email yang cocok dengan string tertentu. Dalam kasus kami, kami perlu menemukan ribuan email yang semuanya memiliki baris subjek yang sama.

Dalam hal ini, semua email ditangguhkan, karena layanan pengiriman ulang kami telah menolaknya karena kami melebihi batas.

cd /var/spool/postfix/deferred
grep -r -i -l "This was the subject line" ./ | cut -d/ -f3 | postsuper -d -

Beberapa catatan kunci tentang ini:

  • grep -l mengembalikan nama file untuk kecocokan, yang merupakan antrian dari pesan yang cocok
  • semua pesan ada di subdirektori yang berbeda sehingga pemotongannya adalah menghapus jalur dari depan. Pastikan Anda menguji jalur pengembalian untuk memastikan Anda baru saja mendapatkan nama antrean
  • postsuper -d - memberi tahu postsuper untuk menghapus pesan yang didapat dari stdin.

Semoga ini membantu orang yang menemukan ini dan mencari petunjuk yang lebih spesifik.

Solusi 2:

Postfix tidak memiliki utilitas seperti exigrep, jadi Anda perlu mengambil file antrian untuk subjek dan kemudian mengirimkan id antrian ke postsuper untuk menghapusnya


Linux
  1. Hapus Semua Email Pengguna root dari Shell di Linux

  2. Dari Mana Skrip Shell Dijalankan?

  3. Bagaimana cara menghapus folder menggunakan regex dari terminal Linux

  1. Bagaimana menemukan dari mana pekerjaan diajukan di SLURM?

  2. dari mana 'pkg-config' mengambil informasinya?

  3. Dari mana datangnya rute ke 169.254.0.0?

  1. Bagaimana Cara Menentukan Dari Mana Variabel Lingkungan Berasal?

  2. Hapus Awalan Dari Tajuk Subjek Dalam Tampilan Indeks?

  3. 9 contoh perintah mail/mailx untuk mengirim email dari baris perintah di Linux