Kiedy naciskam S
w mutt, zapisuje pocztę w formacie folderu poczty ( cur/ tmp/ new/
), ale chcę zapisać pojedynczy plik, podobnie jak sposób zapisywania załączników.
Czy to można skonfigurować?
Rzeczywista wiadomość pojawia się również jako załącznik, więc możesz zapisać ją z listy załączników. W indeksie lub w samej wiadomości naciśnij, vaby otworzyć załączniki i szapisać
s
Polecenie zapisuje do skrzynki pocztowej, co dla ciebie jest w formacie Maildir. Niestety, nie ma polecenia zapisu do pliku, być może dlatego, że w historycznym formacie mbox skrzynka pocztowa zawierająca pojedynczą pocztę jest tylko plikiem zawierającym tę pocztę.mutt
Polecenie rury komunikatów (domyślny skrót|
) mogą być użyte do tego celu. Otwiera wiersz poleceń i piszeszcat > DESIRED-FILE-PATH
.Opcja „dekodowania potoku” kontroluje, co dzieje się z nagłówkami i częściami mime, gdy zapisujesz wiadomość w ten sposób.
Prawdopodobnie można by napisać makro dla tej funkcji.
źródło
set pipe_decode=yes
do mojego muttrc było to, o czym pisał Kai von Fintel.=
.Jeśli masz
touch
plik, a następnie spróbuj zapisać lub skopiować do niego wiadomość, mutt użyje go jako mbox.Możesz także użyć funkcji kopiowania zamiast zapisu. Mutt zakłada, że poczta powinna istnieć tylko w jednej kopii, a zapisanie wiadomości w innej skrzynce spowoduje usunięcie jej z pierwszej, a kopiowanie wykona właściwą kopię.
źródło
Kai von Fintel „s odpowiedź działa idealnie, ale po prostu pomyślałem, że podzielę makro do usprawnienia tego procesu.
Po pierwsze
muttrc
:Spowoduje to przesłanie pełnego e-maila (w tym nagłówków i załączników) do następującego skryptu. Utwórz plik wykonywalny pod adresem
~/.local/bin/file_email
.Ten skrypt zapisuje plik w pierwszym argumencie (tzn. W
muttrc
powyższym przykładzie wiadomość e-mail zostanie zapisana/tmp
). Format nazwy pliku toYYMMDD SUBJECT.eml
. Konwertuje również/
na,∕
aby zapobiec tworzeniu podkatalogów.źródło
formail
skryptu nie byłoby łatwiejsze ?formail
, więc przeczytałem. Nie jestem jednak do końca pewien, do której części mojego skryptu się odnosiłeś? Używaszformail
do wyodrębnienia tematu i daty? Jeśli tak, prawdopodobnie fajny pomysł. Zachęcałbym cię do napisania odpowiedzi; Zdecydowanie poparłbym to.Wypróbowałem wszystkie sugerowane odpowiedzi, ale nie mogłem zapisać nieprzetworzonego, wieloczęściowego (tekst / zwykły + tekst / HTML) e-maila do zapisania do pliku, w tym jego nagłówków i wszystkiego. Potrzebowałem tego, aby nakarmić mój filtr antyspamowy wiadomością e-mail, aby nauczyć go, że określona poczta to spam, czy nie ...
Rozwiązaniem, które wymyśliłem, jest naciśnięcie
e
(tj. „Edytuj wiadomość”) na otwartej wiadomości, która otwiera nieprzetworzoną wiadomość w wybranym edytorze. Raw tutaj oznacza, że otrzymujesz wiadomość dokładnie tak, jak przyszła w mutt, więc masz wszystkie nagłówki i wszystkie bajty, które składają się na wiadomość.Po uderzeniu
e
piszę bufor (ustawiam edytor na vim ) do pliku za pomocą:w <path_to_file>/<file_name>
i to wszystko.PS: Dodałbym to jako komentarz, ale aby to zrobić, musisz mieć pewien poziom reputacji. Wiem też, że pytanie jest bardzo stare, ale ponieważ wielu ludzi nadal używa neomutt , pomyślałem, że to może komuś pomóc.
Aktualizacja: Przeoczyłem
pipe-decode
opcję, o której mówił Kai. Gdyby prawidłowo ustawić tę opcję, działałoby to|
również. Nadal działa też moje rozwiązanie ;-)źródło