Erinevus lehekülje "Procmail" redaktsioonide vahel
1. rida: | 1. rida: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ===Procmail=== | |
− | |||
Procmaili kasutatakse postimasinasse tulnud kirjade kasutajate vahel laiali jaotamiseks. Näiteks vaikimisi lisatakse kasutajale priit saabunud e-post juurde faili /var/spool/mail/priit, millele vastab Pine'i kirjakast INBOX. | Procmaili kasutatakse postimasinasse tulnud kirjade kasutajate vahel laiali jaotamiseks. Näiteks vaikimisi lisatakse kasutajale priit saabunud e-post juurde faili /var/spool/mail/priit, millele vastab Pine'i kirjakast INBOX. | ||
18. rida: | 10. rida: | ||
| exec /usr/local/bin/procmail | | exec /usr/local/bin/procmail | ||
− | + | ===Kasutaja Procmaili konfiguratsioonifail=== | |
46. rida: | 38. rida: | ||
LOGFILE - veateated Procmaililt või programmidelt, mille Procmail käivitas | LOGFILE - veateated Procmaililt või programmidelt, mille Procmail käivitas | ||
− | + | ===Kirjade jagamine failidesse=== | |
Esitame ühe tervikliku näite, kuidas sorteerida saabunud kirju. Failidesse paigutamine toimub Subjecti ja Senderi rea alusel. Kirjad, millele reeglid ei rakendu, salvestatakse faili allumatud ja logi faili logi. Vaikimisi kasutavad reeglid kirja päist. | Esitame ühe tervikliku näite, kuidas sorteerida saabunud kirju. Failidesse paigutamine toimub Subjecti ja Senderi rea alusel. Kirjad, millele reeglid ei rakendu, salvestatakse faili allumatud ja logi faili logi. Vaikimisi kasutavad reeglid kirja päist. | ||
65. rida: | 57. rida: | ||
ZOO-CHAT | ZOO-CHAT | ||
− | + | ===Programmi käivitamine=== | |
Reegli käsu real saab näidata toru järel üksteisest semikooloniga eraldatud programmide nimed, mis tuleb käivitada reegli rakendumisel. Esimese programmi sisendisse suunatakse kõnealune e-kiri. Näiteks selline reegel riputab presidendilt tulnud e-kirja veebi üles | Reegli käsu real saab näidata toru järel üksteisest semikooloniga eraldatud programmide nimed, mis tuleb käivitada reegli rakendumisel. Esimese programmi sisendisse suunatakse kõnealune e-kiri. Näiteks selline reegel riputab presidendilt tulnud e-kirja veebi üles | ||
129. rida: | 121. rida: | ||
− | + | ===Kasulikud lisamaterjalid=== | |
Procmaili veebikoht | Procmaili veebikoht |
Redaktsioon: 17. november 2006, kell 02:17
Sisukord
Procmail
Procmaili kasutatakse postimasinasse tulnud kirjade kasutajate vahel laiali jaotamiseks. Näiteks vaikimisi lisatakse kasutajale priit saabunud e-post juurde faili /var/spool/mail/priit, millele vastab Pine'i kirjakast INBOX.
Kasutajal on võimalik häälestada Procmail nii, et talle saabunud e-post salvestatakse teatud tunnuste alusel kasutaja postikataloogi erinevatesse failidesse. Postikataloogi faile käsitleb Pine kirjakastidena. Lisaks on võimalik käivitada konfiguratsioonis näidatud tingimustel programme, näiteks selleks, et saabunud oluline post edasi saata mobiiltelefonile teatena.
Kui kasutatavas süsteemis Procmail ei ole kohalik meiler, siis saab kasutaja seda enda jaoks käivitada kirjutades faili ~/.forward näiteks rea
| exec /usr/local/bin/procmail
Kasutaja Procmaili konfiguratsioonifail
Konfiguratsioonifailis ~/.procmailrc on kirjas reeglid, mille järgi saabuva e-postiga tegeldakse. Reegleid kirjutatakse järgmise süntaksi alusel
0: [ võtmed ] * tingimus käsu rida
Tingumus esitatakse regulaaravaldisena, milles saab kasutada laiendatud metasümbolite hulka.
Toome näiteks ühe reegli ja selgitame
:0 HB * Z|zoo ZOO
Reegli algust märgib :0, mille järele kirjutatakse võtmed. Tingimust alustab tärn, millele järgneb regulaaravaldis. 'Z|zoo' tähendab, et reegel rakendub neile kirjadele, mille sisus (B) või päises (H) leidub regulaaravaldisega klappiv rida. Antud juhul klapivad stringe 'Zoo' või 'zoo' sisaldavad read. Käsu reale kirjutatud stringi tõlgendatakse faili nimena, kuhu kiri salvestatakse. Antud juhul faili ZOO.
Konfiguratsioonifailis võib esitada mitmeid reegleid, mida kontrollitakse järgemisi. Tegutsetakse vastavalt esimesele sobivale, ignoreerides järgnevaid. Konfiguratsioonifaili alguses saab defineerida mõned spetsiifilised keskkonnamuutujad:
MAILDIR=$HOME/mail DEFAULT=$MAILDIR/allumatud LOGFILE=$MAILDIR/logi MAILDIR - kasutaja postikataloog DEFAULT - fail, kuhu salvestakse kirjad, millele ühtegi reeglit ei rakendunud LOGFILE - veateated Procmaililt või programmidelt, mille Procmail käivitas
Kirjade jagamine failidesse
Esitame ühe tervikliku näite, kuidas sorteerida saabunud kirju. Failidesse paigutamine toimub Subjecti ja Senderi rea alusel. Kirjad, millele reeglid ei rakendu, salvestatakse faili allumatud ja logi faili logi. Vaikimisi kasutavad reeglid kirja päist.
MAILDIR=$HOME/mail DEFAULT=$MAILDIR/allumatud LOGFILE=$MAILDIR/logi :0 * ^Subject.*\[ZOO ZOO :0 * ^Subject.*\[linux\] LINUX :0 * ^Sender.*owner-zoo-chat ZOO-CHAT
Programmi käivitamine
Reegli käsu real saab näidata toru järel üksteisest semikooloniga eraldatud programmide nimed, mis tuleb käivitada reegli rakendumisel. Esimese programmi sisendisse suunatakse kõnealune e-kiri. Näiteks selline reegel riputab presidendilt tulnud e-kirja veebi üles
:0 * ^From.*president | sed -e '$r /home/priit/algus' -e '1,/^$/d' -e '$r /home/imre/lopp' > \ ~/public_html/presidendilt.html; chmod 755 ~/public_html/presidendilt.html
Failides algus ja lopp sisalduvad vastavalt HTML dokumendi alguses ja lõpus olema peavad käsud. Kaalutud kirjade jaotamine
Procmail võimaldab anda kirjale punkte vastavalt sellele, mis kirjas sisaldub. Kui punktide summa ehk skoor on positiivne, siis rakendatakse reeglit.
Punkte antakse geomeetrilise jada n esimese liikme summa valemi alusel
n n k-1 x - 1 S = w * Sum x = w * ------- n k=1 x - 1
Näiteks kolme esimese liikme summa
S = w + w * x + w * x * x 3
Kusjuures kogu jada summa arvutatakse sellise valemi järgi
w S = ------- 1 - x
w - jada esimene liige x - jada tegur
Kogu jada summa on vajalik maksimaalse võimaliku punktide arvu leidmiseks, mida üks kaalurida saab anda, kui tegur on väiksem ühest.
Näiteks sellise reegli puhul (esimese rea -1000 on w ja 0 on x)
:0 B * -1000^0 * 100^1 N|normaalne * 600^0.75 I|ilus * 1000^0.5 V|vapustav * -800^2 P|paha HeadUudised
saab selline kiri
Tere Priit, Kas pingviini ikka läheb? Meil on siin Rica's suht normaalne ilm. Ilus isegi. Jõuan koormaga piirile täna õhtul, ilus? Vapustavalt hästi on läinud seni. Mart
punkte selliselt Algul saab kätte esimese rea eest -1 000 kuna tühi regulaaravaldis klapib kõigega. Kuna tegur on 0, siis see rida rida rohkem punkte skoori ei lisa. Iga "normaalne" annab 100 punkti. Esimene "ilus" lisab skoori 600 punkti, teine 600 x 0.75, kolmas lisaks 600 x 0.75 x 0.75 jne. Siiski, see rida ei saa lisada üle 2 400 punkti. Meie puhul lisab ta 1 000 punkti. "vapustav" lisab 1 000 punkti. "paha" ei lisa midagi.
Kiri salvestatakse faili HeadUudised, kuna ta sai punkte kokku 1 100.
skoor = -1000 + 100 + 600 + 600 * 0.75 + 1000 = 1100
Kasulikud lisamaterjalid
Procmaili veebikoht Regulaaravaldised
© EENet 2000