GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara membagi kotak surat menjadi satu file per pesan?

Cukup gunakan formail . formail adalah program yang dapat memproses kotak surat, menjalankan beberapa tindakan untuk setiap pesan di kotak surat, memisahkan pesan, dan seterusnya.

Info lebih lanjut:http://www.manpagez.com/man/1/formail/

Jika Anda hanya ingin membagi kotak surat menjadi file terpisah, saya akan menyarankan solusi seperti itu:

$ cat $MAIL | formail -ds sh -c 'cat > msg.$FILENO'

Dari pria:

   FILENO
        While splitting, formail  assigns  the  message  number  currently
        being  output  to  this  variable.   By presetting FILENO, you can
        change the initial message number being used and the width of  the
        zero-padded  output.   If  FILENO is unset it will default to 000.
        If FILENO is non-empty and does not contain a number, FILENO  gen-
        eration is disabled.

Git (git mailsplit ) juga dapat melakukannya. Misalnya,

wget ftp://lists.gnu.org/bug-tar/2014-09
git mailsplit -o. 2014-09

Jika Anda tidak memiliki formail, Anda juga dapat menggunakan oneliner Perl ini (disalin dari sini, dan baru saja diuji pada Kotak Masuk Thunderbird yang perlu saya pisahkan)

perl -pe 'open STDOUT, ">out".++$n if /^From /' < $IN > before_first

atau, untuk memiliki angka 0-empuk:

perl -pe 'open STDOUT, sprintf(">m%05d.mbx", ++$n) if /^From /' < $IN > before-first

Linux
  1. Bagaimana cara RSYNC satu file?

  2. Bagaimana cara membagi satu file teks menjadi beberapa file *.txt?

  3. Bagaimana cara membagi file CSV sesuai jumlah baris yang ditentukan?

  1. Cara Menghapus File Root Mail (Kotak Surat) di Linux

  2. Bagaimana cara membaca satu file di maildir?

  3. Cara mengonversi file TAR menjadi file ISO

  1. Cara membagi satu file menjadi beberapa file berdasarkan baris

  2. Menggabungkan File Tertentu Menjadi Satu File Tunggal?

  3. Alat Untuk Membagi Buku yang Disimpan Sebagai Pdf Tunggal Menjadi Satu Pdf Per Bab?