Provided by:
manpages-pl_20060617-2_all 
NAZWA
formail - program do zmiany formatu listów (email)
SKŁADNIA
formail [+skip] [-total] [-bczfrktedqBY] [-p prefiks]
[-D max_dug idcache]
[-l folder]
[-x pole_nagwka] [-X pole_nagwka]
[-a pole_nagwka] [-A pole_nagwka]
[-i pole_nagwka] [-I pole_nagwka]
[-u pole_nagwka] [-U pole_nagwka]
[-R stare_pole nowe_pole]
[-n [max_proc ]] [-m min_pl] [-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, zachowaj treść listu.
-t Zaufaj nadawcy, że podał właściwy adres zwrotny. Ta opcja
powoduje, że formail wybierze do odpowiedzi nadawc z nagwka
maila (tj. nagłówka określonego przez nadawcę) zamiast nadawc z
koperty maila (tj. nagłówka utworzonoego automatycznie przez
serwer pocztowy) Opcja ta 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 opuścisz 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ę foldera poczty
oraz rozmiar wiadomości w bajtach. Poleceniem mailstat 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_pl
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
użyj -q-.
-D max_dug idcache
Formail będzie sprawdzał czy Message-ID aktualnej wiadomości był
już widziany - używając pliku idcache maksymalnie max_dug
długości. Jeżeli nie dzieli, zwróci wartość prawidłową operację po
znalezieniu duplikatu. Jeżeli dzieli, nie poda 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.
-x pole_nagwka
Wyciąga z nagłówka zawartość pola pole_nagwka. Kontynuowane
linie nagłówka nie będą łączone; jeżeli chcesz, aby wartość z pola
nagłówka została wyświetlona w jednej linii, użyj opcji -c.
-X pole_nagwka
Takie samo jak -x, ale zostawia także nazwę pola.
-a pole_nagwka
Dodaje pole pole_nagwka do nagłówka; ale tylko wtedy, gdy
podobne pole jeszcze nie istnieje. Jeżeli podasz jako nazwę pola
Message-ID: lub Resent-Message-ID: bez zawartości, wtedy formail
utworzy niepowtarzalny message-ID.
-A pole_nagwka
Dodaj pole pole_nagwka do nagłówka bez względu na już
istniejące.
-i pole_nagwka
Takie jak -A, poza tym, że we wszystkich podobnych, istniejących
polach zostanie dodane ``Old-'' na początku. Jeśli pole_nagwka
składa się tylko z nazwy pola, nie zostanie dodane.
-I pole_nagwka
Takie jak -i, poza tym, że wszystkie podobne pola zostaną
usunięte. Jeśli pole_nagwka składa się tylko z nazwy pola, pole
to zostanie całkowicie usunięte.
-u pole_nagwka
Zrób pierwsze wystąpienie tego pola niepowtarzalnym, usuwając
wszystkie jego kolejne wystąpienia.
-U pole_nagwka
Zrób ostatnie wystąpienie tego pola niepowtarzalnym, usuwając
wszystkie jego poprzednie wystąpienia.
-R stare_pole nowe_pole
Zmień wszystkie nazwy pola stare_pole na nowe_pole.
+skip
Pomiń pierwsze skip wiadomości w czasie dzielenia.
-total
Podaj 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.
RFC822, 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 generowane odpowiedzi. Zostało to opisane w RFC2822,
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.
ZMIENNE
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), binmail(1), sendmail(8), procmail(1), sed(1), sh(1), RFC822,
RFC2822, RFC1123
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 to 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 katalogach podanych w
PATH, 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 RFC822. 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. Jeśli chcesz zachować oryginalną linię `From ', użyj
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 się.
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
RFC822.
UWAGI
Wywołanie formaila z opcjami -h or -? spowoduje wyświetlenie stron
pomocy.
ŹRÓDŁO
Ten program jest częścią procmaila - pakietu do przetwarzania listw
(v3.22) dostępnego na http://www.procmail.org/ lub na ftp.procmail.org
na ftp.informatik.rwth-aachen.de w katalogu pub/procmail
LISTA DYSKUSYJNA
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>