Provided by: manpages-pl_4.13-4_all 

NAZWA
formail - program do zmiany formatu listów (e-mail)
SKŁADNIA
formail [+skip] [-total] [-bczfrktedqBY] [-p prefiks]
[-D max_dług idcache]
[-l folder]
[-x pole_nagłówka] [-X pole_nagłówka]
[-a pole_nagłówka] [-A pole_nagłówka]
[-i pole_nagłówka] [-I pole_nagłówka]
[-u pole_nagłówka] [-U pole_nagłówka]
[-R stare_pole nowe_pole]
[-n [max_proc ]] [-m min_pól] [-s [polecenie [arg ...]]]
formail -v
OPIS
formail jest filtrem, który może być użyty do zmiany listu do formatu skrzynki pocztowej, komentowania
"From ", generowania nagłówków automatycznej odpowiedzi, robienia prostego włączania i wyłączania pól
nagłówka, dzielenia pliku z listami lub artykułami. Streszczenie (ang. digest)/skrzynka pocztowa/artykuł
pobierane są ze standardowego wejścia.
Jeśli oczekiwane jest, że formail określi nadawcę listu, a nie może tego zrobić, to użyje "foo@bar".
Jeśli formail zostanie uruchomiony bez żadnych opcji, zmieni format listu pobranego ze standardowego
wejścia na format skrzynki pocztowej i poprzedzi wszystkie niepotrzebne pola "From " znakiem ">".
OPCJE
-v Formail wypisze informacje o wersji i zakończy działanie
-b Nie usuwa pól nagłówka uważanych za niepotrzebne (np. linii zaczynających się od "From ").
-p prefiks
Zmiana znaku komentarza na prefiks. Jeżeli nie podano, formail używa ">".
-Y Przyjmuje tradycyjny (Berkeley) format skrzynki, ignorując wszelkie pola Content-Length:.
-c Łączy podzielone w nagłówku pola. Może być wygodne przy późniejszej edycji listu standardowym
(zorientowanym liniowo) narzędziem tekstowym.
-z Zapewnia odstęp pomiędzy nazwą i zawartością pola. Usuwa pola zawierające tylko pojedynczy biały
znak. Usuwa początkową i końcową twardą spację w polach wyciągniętych przy użyciu -x.
-f Zmusza formail do pominięcia formatu innego niż skrzynka pocztowa (np. nie generuje "From " jako
pierwszej linii).
-r Generuje nagłówek automatycznej odpowiedzi. Polega to zwykle na odrzuceniu wszystkich istniejących
pól z oryginalnej wiadomości (oprócz X-Loop:). Pola, które mają być zachowane, muszą zostać podane w
opcji -i. Jeśli zostanie użyte w połączeniu z -k, można zapobiec komentowaniu treści przez użycie
-b.
-k W czasie tworzenia nagłówka automatycznej odpowiedzi lub wyciągania pól, zachowuje treść listu.
-t Ufa nadawcy, że podał właściwy adres zwrotny. Ta opcja powoduje, że formail wybierze do odpowiedzi
nadawcę z nagłówka maila (tj. nagłówka określonego przez nadawcę) zamiast nadawcę z koperty maila
(tj. nagłówka utworzonego automatycznie przez serwer pocztowy). Opcja powinna być używana podczas
tworzenia nagłówków automatycznej odpowiedzi na artykuły z grup dyskusyjnych (news) albo gdy nadawca
wiadomości spodziewa się odpowiedzi.
-s Treść na wejściu programu zostanie podzielona na oddzielne listy, a potem przekazana pojedynczo
potokiem do programu (dla każdej części zostanie uruchomiony nowy program). -s musi być ostatnią
podaną opcją. Pierwszy argument po tej opcji powinien być nazwą programu. Każdy następny zostanie
przekazany programowi jako opcja. Jeśli pominie się nazwę programu, formail połączy wszystkie listy
w stdout. Zobacz także FILENO.
-n [max_proc]
Mówi formailowi, aby nie czekał na zakończenie każdego programu przed uruchomieniem następnego
(sprawia, że poszczególne części są obrabiane równolegle). Opcjonalny parametr max_proc określa
górny limit liczby jednocześnie uruchomionych procesów,
-e Nie wymaga pustych linii przed początkiem nagłówka kolejnego listu (np. list może zaczynać się w
każdej linii).
-d Mówi formailowi, że wiadomości, które mają być podzielone, nie muszą być w sztywnym formacie
skrzynki pocztowej (pozwala to na dzielenie artykułów/streszczeń lub skrzynek w niestandardowych
formatach). Ta opcja wyłącza rozpoznawanie pola Content-Length:
-l folder
Tworzy plik z logiem w takim samym formacie jak procmail. Zawiera on całą linię "From ", nagłówek
"Subject:", nazwę folderu poczty oraz rozmiar wiadomości w bajtach. Poleceniem mailstat(1) można
wyświetlić podsumowanie logów w tym formacie.
-B Sprawia, że formail przyjmuje, że będzie dzielił plik w formacie "BABYL rmail".
-m min_pól
Pozwala na podanie minimalnej liczby pól nagłówka przed stwierdzeniem, że może szukać początku
kolejnej wiadomości. Standardowo ustawione na 2.
-q Formail nie będzie wypisywał (ale nadal będzie wykrywał) błędów zapisu, takich samych wiadomości,
błędnych pól Content-Length:. Ta opcja jest standardowo włączona. Aby wyświetlać te informacje
należy użyć -q-.
-D max_dług idcache
Formail będzie sprawdzał, czy Message-ID aktualnej wiadomości był już widziany - używając pliku
idcache o maksymalnej długości max_dług bajtów.Jeżeli nie dzieli wiadomości, zwróci wartość
oznaczającą powodzenie operacji po znalezieniu duplikatu. Jeżeli dzieli, nie wypisze wiadomości,
które już wystąpiły. Jeżeli zostanie użyte w połączeniu z opcją -r, formail popatrzy na adres
pocztowy nadawcy zamiast na Message-ID wiadomości.
-x pole_nagłówka
Wyciąga z nagłówka zawartość pola pole_nagłówka. Kontynuowane linie nagłówka nie będą łączone; aby
wartość z pola nagłówka została wyświetlona w jednej linii, należy użyć opcji -c.
-X pole_nagłówka
Takie samo jak -x, ale zostawia także nazwę pola.
-a pole_nagłówka
Dodaje pole pole_nagłówka do nagłówka; ale tylko wtedy, gdy podobne pole jeszcze nie istnieje.
Jeżeli jako nazwę pola zostanie podane Message-ID: lub Resent-Message-ID: bez zawartości, wtedy
formail utworzy niepowtarzalny message-ID.
-A pole_nagłówka
Dodaje pole pole_nagłówka do nagłówka bez względu na już istniejące.
-i pole_nagłówka
Takie jak -A, poza tym, że we wszystkich podobnych, istniejących polach zostanie dodane "Old-" na
początku. Jeśli pole_nagłówka składa się tylko z nazwy pola, nie zostanie dodane.
-I pole_nagłówka
Takie jak -i, poza tym, że wszystkie podobne pola zostaną usunięte. Jeśli pole_nagłówka składa się
tylko z nazwy pola, pole to zostanie całkowicie usunięte.
-u pole_nagłówka
Robi pierwsze wystąpienie tego pola niepowtarzalnym, usuwając wszystkie jego kolejne wystąpienia.
-U pole_nagłówka
Robi ostatnie wystąpienie tego pola niepowtarzalnym, usuwając wszystkie jego poprzednie wystąpienia.
-R stare_pole nowe_pole
Zmienia wszystkie nazwy pola stare_pole na nowe_pole.
+skip
Pomija pierwszych skip wiadomości w czasie dzielenia.
-total
Wypisuje co najwyżej total podzielonych wiadomości.
UWAGI
Podczas zmieniania nazwy, usuwania lub wyciągania pól można użyć częściowych nazw pól, aby dopasować
wszystkie pola, których nazwy zaczynają się od podanego łańcucha znaków.
Domyślnie, podczas generowania nagłówka automatycznej odpowiedzi, procmail wybiera nadawcę z koperty
wiadomości. Jest to zachowanie poprawne w wypadku wysyłania informacji o przebywaniu odbiorcy na
wakacjach i innych automatycznych odpowiedzi dotyczących drogi przesłania lub dostarczenia oryginalnej
wiadomości. Jeżeli nadawca oczekuje odpowiedzi lub jeśli odpowiedź jest generowana na podstawie
zawartości oryginalnej wiadomości, to powinno się użyć opcji -t.
RFC 822, oryginalny standard dotyczący formatu internetowych wiadomości, nie określał, czy nagłówki
Resent (te, które zaczynają się od "Resent-", np. "Resent-From:") powinny być brane pod uwagę podczas
generowania odpowiedzi. Od tego czasu rekomendowane użycie nagłówków Resent ewoluowało i obecnie mają one
znaczenie tylko informacyjne i nie są używane do generowana odpowiedzi. Zostało to opisane w RFC 2822,
nowym standardzie formatu wiadomości internetowych, który zawiera m.in. tę informację:
Pola Resent identyfikują, jak wiadomość została powtórnie wprowadzona do systemu transportującego
przez użytkownika. Celem używania nagłówków Resent jest, aby wiadomość, która dotarła do
odbiorcy, była taka sama, jakby została bezpośrednio wysłana przez oryginalnego nadawcę, z
niezmienionymi wszystkimi oryginalnymi polami nagłówka.... Pola te NIE MOGĄ być używane podczas
zwykłego odpowiadania lub innych podobnych automatycznych akcji na wiadomościach.
Obecnie formail ignoruje nagłówki Resent przy generowaniu nagłówków odpowiedzi, jednakże wersje formaila
wcześniejsze niż 3.14 dawały takim nagłówkom większy priorytet. Jeżeli pewna aplikacja wymaga starego
zachowania formaila, można je zasymulować przez wywołanie formaila z opcją "-a Resent-" dodaną do opcji
-r i -t. To użycie jest przestarzałe i nie powinno być stosowane w nowych aplikacjach.
ŚRODOWISKO
FILENO
W czasie dzielenia, formail dodaje numer wiadomości do tej zmiennej. Ustawiając FILENO, można
zmienić numer pierwszej wiadomości oraz szerokość danych wyjściowych (dopełnianych zerami). Jeśli
FILENO nie jest ustawione, przyjmie standardowo wartość 000. Jeśli FILENO nie jest puste i nie
zawiera liczby, tworzenie FILENO zostanie wyłączone.
PRZYKŁADY
Aby podzielić pierwsze streszczenie zwykle można użyć:
formail +1 -ds >> twoja_skrzynka_pocztowa
lub
formail +1 -ds procmail
Aby usunąć z nagłówka wszystkie pola Received:
formail -I Received:
Aby usunąć z nagłówka wszystkie pola oprócz From: i Subject:
formail -k -X From: -X Subject:
Aby zastąpić wszystkie pola Reply-To:
formail -i "Reply-To: foo@bar"
Aby zmienić niestandardową skrzynkę pocztową na standardową można użyć:
formail -ds <stara_skrzynka >>nowa_skrzynka
Lub jeśli korzysta się z bardzo tolerancyjnego programu pocztowego:
formail -a Date: -ds <stara_skrzynka >>nowa_skrzynka
Aby wyciągnąć nagłówek z wiadomości:
formail -X ""
lub
sed -e '/^$/ q'
Aby wyciągnąć treść wiadomości:
formail -I ""
lub
sed -e '1,/^$/ d'
ZOBACZ TAKŻE
mail(1), sendmail(8), procmail(1), sed(1), sh(1), RFC 822, RFC 2822, RFC 1123
DIAGNOSTYKA
Can't fork Zbyt wiele procesów na tym komputerze.
Content-Length: field exceeds actual length by nnn bytes
Pole Content-Length: w nagłówku jest ustawione na długość większą niż właściwa
treść. To sprawia, że wiadomość wchłania następne wiadomości w tej samej skrzynce
pocztowej.
Couldn't write to stdout
Program, do którego formail przekazywał dane używając potoku, nie przyjął
wszystkich wysłanych danych: tę wiadomość można zlikwidować opcją -q.
Duplicate key found: x Message-ID lub nadawca x tej wiadomości został znaleziony w idcache; tę wiadomość
można zlikwidować opcją -q.
Failed to execute "x" Program nie znajduje się w ścieżce lub nie jest wykonywalny.
File table full Zbyt wiele otwartych plików.
Invalid field-name: "x"
Nazwa pola "x" zawiera znaki sterujące lub nie może być częściowym polem dla tej
opcji.
OSTRZEŻENIA
Możesz zaoszczędzić nerwów sobie i innym jeżeli postarasz się unikać używania automatycznych odpowiedzi
na listy przychodzące z list dyskusyjnych. Zależnie od formatu przychodzących listów (który zależy od
programu pocztowego nadawcy i konfiguracji listy) formail może zdecydować o tworzeniu nagłówka
automatycznej odpowiedzi skierowanego na listę.
Zgodnie z tradycją narzędzi UN*X-owych, formail zrobi dokładnie to o co go poprosisz, nawet jeżeli
wynikowa wiadomość nie będzie zgodna ze standardem opisanym w RFC 822. W szczególności formail pozwoli
wygenerować pola nagłówka, które kończą się spacją zamiast dwukropkiem. Chociaż jest to poprawne dla
początkowej linii "From ", jednak ta linia nie jest polem nagłówka, ale bardziej separatorem wiadomości w
pliku o formacie mbox. Wielokrotne wystąpienia tej linii bądź jakiegokolwiek innego pola nagłówka
pozbawionego dwukropka, będą uważane przez wiele programów pocztowych, w tym również przez formail, za
początki nowych wiadomości. Inne programy mogą uważać takie wiadomości za uszkodzone. Z tego powodu nie
powinieneś używać opcji -i z linią "From ", gdyż powstałe w wyniku tej opcji pole "Old-From " nie jest
prawdopodobnie tym, o co chodzi. Aby zachować oryginalną linię "From ", należy użyć opcji -R do
zmienienia jej nazwy na poprawne pole nagłówka, takie jak "X-From_:".
BŁĘDY
Kiedy formail tworzy poprzedzającą linię z "From ", zwykle będzie ona zawierała datę. Jeżeli formail
dostanie opcję "-a Date:", użyje daty z pola "Date:" nagłówka (jeżeli będzie istniało). Jednak, ponieważ
formail kopiuje zawartość tego pola, jego format będzie się różnił od tego, który jest oczekiwany przez
większość programów pocztowych.
Jeśli formail zostanie poinformowany, aby kasować lub zmieniać nazwę linii "From ", nie odtworzy jej jak
zwykle automatycznie. Aby zmusić go do tego w tym wypadku, należy dodać -a 'From '.
Jeśli formail nie jest wywoływany jako pierwszy program w potoku i każe mu się dzielić wejście na kilka
wiadomości, to nie zakończy działania dopóki program, od którego otrzymuje dane, nie zamknie potoku.
Jeśli formail ma wygenerować automatyczną odpowiedź, to nigdy nie umieści więcej niż jednego adresu w
polu "To:".
RÓŻNE
Formail przekazuje czyste 8 bitów.
Kiedy formail musi stwierdzić adres nadawcy, dozwolony jest każdy adres zgodny z RFC 822. Formail będzie
zawsze obcinał adres do jego najkrótszej formy (usuwając komentarze i spacje).
Wyrażenie, które jest używane, aby znaleźć znaczniki początku wiadomości ma postać:
"\n\nFrom [\t ]*[^\t\n ]+[\t ]+[^\n\t ]"
Jeśli pole Content-Length: zostanie znalezione w nagłówku, formail skopiuje określoną liczbę bajtów,
przed ponownym zaczęciem szukania początków wiadomości (poza dzieleniem streszczeń lub skrzynek Berkeley,
kiedy format jest przybrany).
Jakiekolwiek linie nagłówka bezpośrednio następujące po początkowej linii "From ", które zaczynają się od
">From " są uważane za kontynuację linii "From ". Jeżeli formail miałby zmienić nazwę linii "From ", to
zmieni również każde początkowe ">" na spację, transformując tym samym te linie w normalne kontynuacje
określone w RFC 822.
UWAGI
Wywołanie formaila z opcjami -h lub -? spowoduje wyświetlenie stron pomocy.
SOURCE
Ten program jest częścią procmaila - pakietu do przetwarzania listów (v3.23pre) dostępnego na
http://www.procmail.org/ lub na ftp.procmail.org w katalogu pub/procmail/.
MAILINGLIST
Istnieje lista dyskusyjna poświęcona pytaniom związanym z dowolnym programem pakietu procmail:
<procmail-users@procmail.org>
w celu zadania pytań i uzyskania odpowiedzi.
<procmail-users-request@procmail.org>
w celu zapisania się.
Aby być informowanym o nowych wersjach i oficjalnych łatach, wyślij mail do
procmail-announce-request@procmail.org
(jest to lista tylko do odczytu).
AUTORZY
Stephen R. van den Berg
<srb@cuci.nl>
Philip A. Guenther
<guenther@sendmail.com>
T◈UMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Jarek Wołoszyn <yossa@dione.ids.pl>,
Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ
ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-
list@lists.sourceforge.net.
BuGless 2001/08/04 FORMAIL(1)