İngilizceFransızcaİspanyolca

Ad


OnWorks favicon'u

gurgitate-mail - Bulutta Çevrimiçi

Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü üzerinden OnWorks ücretsiz barındırma sağlayıcısında gurgitate-posta çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen gurgitate-mail komutudur.

Program:

ADI


gurgitate-mail - kullanımı kolay bir posta filtresi

SİNOPSİS


gurgitate-posta

TANIM


"gurgitate-mail" mailinizi okuyan ve ona göre filtreleyen bir programdır.
.gurgitate-rules.rb ana dizininizdeki dosya. Yapılandırma dosyası Ruby sözdizimini kullanır
ve bu nedenle oldukça esnektir.

Genellikle sizin aracılığınızla çağrılır. .ileri Dosya:

"|/path/to/gurgitate-mail"

ya da senin aracılığıyla .procmailrc Dosya:

: 0:
| /yol/to/gurgitate-posta

Alternatif olarak, sitenizde sistem yöneticisi iseniz veya sistem yöneticiniz arkadaş canlısıysa, şunları yapabilirsiniz:
gurgitate-mail'i yerel dağıtım aracısı olarak kullanın. Postfix için

mailbox_command=/opt/bin/gurgitate-mail

in /etc/postfix/main.cf. Başka bir MTA kullanıyorsanız ve gurgitate-mail'i
yerel teslimat acentesi, lütfen bana nasıl olduğunu söyle! Bunu belgelere dahil etmek istiyorum.

YAPILANDIRMA DOSYALAR


Gurgitate-mail tarafından kullanılan üç yapılandırma dosyası vardır: ikisi sistem genelindedir ve
üçüncüsü, kullanıcı kuralları dosyasıdır.

Sistem genelindeki iki yapılandırma dosyası /etc/gurgitate-kuralları ve
/etc/gurgitate-rules-default. Bunlar kullanıcı kurallarından önce ve sonra işlenir,
respectivamente.

/etc/gurgitate-kuralları sistem genelinde filtreleme ihtiyaçlarını karşılamak için kullanılır: varsayılanı ayarlama
varsayılan MBox yerine Maildir'e posta kutusu stili, biriktirme dizinini ayarlama, şeyler
öyle.

Kullanıcı yapılandırma dosyası $HOME/.gurgitate-kuralları (Veya alternatif olarak,
$HOME/.gurgitate-rules.rb. Ya iş). Buraya kendi kurallarını koy. kullanıcı
yapılandırma dosyası, işleme sırasında bir "dönüş" ile karşılaşmaz, ardından ek
içerdiği kurallar /etc/gurgitate-rules-default çalıştırılır. Bu da dönmezse,
ardından posta mesajları varsayılan posta biriktirme konumuna kaydedilir.

Komut satırında "-f" seçeneği kullanılıyorsa, belirtilen dosya kullanılacak ve
varsayılan kurallar olmayacak. "-f" seçeneği birden fazla kullanılabilir:

gurgitate-mail -f test-kuralları -f ek-kurallar

YAPILANDIRMA PARAMETRELERİ


Gurgitate-mail'in yolunu değiştirmek için ayarlayabileceğiniz birkaç parametre vardır.
davranır. Örneğin şunu söyleyerek bir yapılandırma parametresi ayarlarsınız:

posta göndermek "/usr/sbin/sendmail"

"sendmail" parametresini " olarak ayarlar/usr/sbin/sendmail".

posta
Posta klasörlerini koymak istediğiniz dizin. Bu, varsayılan olarak $HOME/Mail'dir.

kayıt dosyası
Nereye gittin gurgitate-mail'in günlük mesajlarına gitmek için. için standart konum
bu $HOME/.gurgitate.log

mail gönder
Posta teslim etmek için kullanılan sendmail programının tam yolu. Bu herhangi bir program olabilir
parametresi olarak postanın teslim edileceği adreslerin listesini alır ve bu
standart girişte bir posta mesajı.

ev direği
Ana dizininizin tam yolu. Bu, gerçek eviniz ne olursa olsun varsayılandır
dizindir.

biriktirme
Sistemin posta biriktiricilerinin gittiği yol. Bu varsayılan olarak "/var/spool/posta".
Bir Maildir sisteminde bu, "homedir" ile aynı şekilde ayarlanmalıdır.

biriktirme dosyası
Posta biriktirmenizin tam yolunun posta biriktirme dosyası bileşeni. Bu genellikle
Kullanıcı adınızı. Maildir kullanıcıları bunu "Maildir" olarak ayarlamalıdır.

klasör stili
Tercih ettiğiniz klasör stili. Bu (şu anda) MBox veya Maildir olabilir.

FILTRE KURALLAR


Filtre kuralları, aşağıdaki yöntemler ve değişkenlerle birlikte bir dizi Ruby ifadesidir.
Mevcut:

Değişkenler

from Bu, e-posta mesajının zarf "gönderen" adresini içerir. (Bunun
"Kimden:" başlığının içeriğiyle mutlaka aynı değildir)

başlıkları
Bu, mesajın başlıklarını içeren bir nesnedir. Birkaç yöntem var
bu nesneyle birlikte gelenler:

gövde Bu, e-posta iletisinin gövdesini içerir. Henüz, gerçekten hiçbir şey yok
atamanın dışında bununla yapabileceğiniz ilginç; yeniden yazabilirsin
bir e-posta mesajının gövdesi bu şekilde. Eklerle uğraşmak için planlanmıştır
"gurgitate-mail"in gelecekteki sürümü.

posta
Belirttiğinizde "kaydet" yöntemi tarafından kullanılan klasörleri içeren dizin
"= olarak bir klasördosya" (Elm gibi). Varsayılan olarak "$HOME/Mail"dir.

ev direği
Ev dizininiz. Sadece oku.

kayıt dosyası
"Gurgitate-mail" günlük dosyasının konumu. "nil" olarak ayarlanırsa, günlük kaydı yapılmaz
tamamlamak. Varsayılan "$HOME/.gurgitate.log" şeklindedir.

mail gönder
"Sendmail" programının konumu. "İleri" yöntemiyle kullanılır. Varsayılan
"/usr/lib/sendmail".

biriktirme dosyası
Posta biriktirme konumu. Sadece oku.

Yöntemler

eşleşmeler(ad(lar), normal ifade)
"name" başlığı normal ifade "regex" ile eşleşiyorsa "true" değerini döndürür. Eğer
"name" bir başlık adları dizisidir, ardından aşağıdakilerden en az biri doğruysa true değerini döndürür.
başlıklar eşleşir. Hem "Kime:" hem de "Bilgi:" başlıklarının eşleşip eşleşmediğini test etmek için kullanışlıdır.

from E-posta iletisinin zarf "gönderen" adresini döndürür. Bunun aynı olduğunu unutmayın
çıplak "dan" olarak.

"Kime" ve "Cc" içeriğiyle bir HeaderBag (bir tür dizi) döndürür
başlıklar.

to_s Ruby kuralına göre, tüm başlıkları bir "String" nesnesi olarak döndürür.

kayıt etmek(posta kutusu)
Bu, mesajı bir posta kutusuna kaydeder. Posta kutusunu bir = ile bir kelime olarak belirtebilirsiniz.
önüne imzala, bu durumda onu "maildir" içine koyar. kullanmazsanız
=isim biçiminde, sonra mutlak bir yol adı belirtmeniz gerekir. eğer yazamıyorsa
mesajını talep ettiğiniz dosyaya gönderirseniz, "spoolfile" dosyasına yazmaya çalışacaktır.

ileri (adres)
Bu, e-posta mesajını başka bir e-posta adresine iletir.

boru (program)
Bu, mesajı "program" aracılığıyla iletir. "boru", çıkış kodunu döndürür.
mesajın iletildiği program.

filtre(program)
Bu, mesajı "program" aracılığıyla iletir ve yeni bir Gurgitate nesnesi döndürür
filtrelenmiş postayı içerir. (Bu, e-postayı değiştiren harici filtreler için kullanışlıdır.
örneğin, bir spam puanı üstbilgisi ekleyen SpamAssassin gibi.)

Ayrıca söyleyebilirsin

filtre(program) yapmak
# kod burada
son

ve yeni oluşturulan Gurgitate nesnesini bloğa verir.

başlıkları
Bu, başlıkları kendilerine ait bir nesne olarak döndürür. Bu nesnenin kendi yöntemleri vardır:

başlıklar[*başlık adları]
Bu, sorduğunuz başlıkları içeren bir HeaderBag (dizinin bir alt sınıfı) döndürür.
için. Daha sonra, RHS normal ifadesiyle eşleştirmek için bu sonuçtaki =~ operatörünü kullanabilirsiniz.
HeaderBag'deki her şeyle birlikte.

Bir başlığın değerini "headers[name]=newvalue" ile değiştirebilirsiniz.

headers.match(isim, normal ifade)
Normal ifadeyle "name" adındaki başlığı eşleştirir. Bu aynı
başlıklar[isim] =~ /regex/.

headers.matches(isimler,normal ifade)
Başlıkları "adlar" adlarıyla normal ifadeyle eşleştirir. Bu aynısı
başlıklar olarak[*isimler] =~ /regex/.

başlıklar.kimden
gelen zarfı döndürür. Bunu "headers.from=newaddress" ile değiştirebilirsiniz.
çok.

dönüş
Bu, "gurgitate-mail"e e-posta mesajını işlemeyi durdurmasını söyler. kullanmazsan
"return", ardından "gurgitate-mail" aynı postayı tekrar işlemeye devam edecektir.
sonraki kural. Sonunda bir "dönüş" yoksa gurgitate-rules.rb, Daha sonra
"gurgitate-mail", e-posta mesajını normal posta kuyruğuna kaydeder.

log(İleti)
Bu, günlük dosyasına bir günlük mesajı yazar.

BASİT ÖRNEKLER


Açıklamalarıyla birlikte "gurgitate-mail" kurallarına bazı örnekler:

=~ /ebay.com/ adresinden ise save("=ebay"); dönüş; son

eBay'den gelen herhangi bir e-posta (örneğin, otomatik açık artırma sonu bildirimleri ve daha yüksek teklif
bildirimler) "ebay" klasörüne dosyalanır.

eğer =~ /kök@/ sonra save("=root"); dönüş; son

Kökten (herhangi bir ana bilgisayardan) gelen herhangi bir e-posta, özel bir klasöre dosyalanır. Sistem yöneticileri için kullanışlıdır
crontab e-postasını izleme.

if headers.matches(["To","Cc"],"webmaster@") o zaman
kaydet("=web yöneticisi")
dönüş
son

Kime: veya Bilgi: satırı "sysadmin" olan herhangi bir e-posta, bir "sysadmin" klasörüne kaydedilir. Kullanışlı
adreslerine yönlendirilen birden fazla rol hesabı olan kişiler için.

üstbilgiler["Konu"] =~ /\[SPAM\]/ ise
kaydet("=spam")
dönüş
son

Bu, üstbilgilere karşı kalıpları eşleştirmek için farklı bir sözdizimidir. Ayrıca eşleştirebilirsiniz
köşeli parantez içinde birden çok başlık.

eğer başlıklar["Konu","Anahtar kelimeler"] =~ /kötü bir kelime/ o zaman
kaydet("=küfür")
dönüş
son

Konu ve Anahtar Kelimeler başlıklarında "kötü bir kelime" arar ve varsa, kaydeder
"küfür" klasöründeki e-posta.

if headers.matches(["Kime","Bilgi"],"[e-posta korumalı]") sonra
pipe("|rcvstore +posta listesi")
dönüş
son

Bir posta listesine gönderilen herhangi bir e-posta, bir MH klasöründe depolamak için "rcvstore" aracılığıyla iletilir.

O

headers.matches(["Kime","Cc"],/regex/)

deyim, onun için bir kestirme yol olacak kadar sık ​​olur:

eğer için =~ /[e-posta korumalı]/ sonra
pipe("|rcvstore +posta listesi")
dönüş
son

Postayı "rcvstore" aracılığıyla posta listesine yönlendirir.

İLERİ ÖRNEKLER


İşte size neler yapabileceğiniz konusunda bir fikir vermek için biraz daha zekice örnekler.
"gurgitate-posta". adlı bir dosyada bir e-posta beyaz listeniz olduğunu varsayalım.
$HOME/.arkadaşlar, böylece bazı e-postaların spam olup olmayacağını belirleyebilirsiniz.

Ardından, beyaz listenizdeki biri size e-posta gönderirse, bunu otomatik olarak
"gelen kutusu" klasörü:

arkadaşlar=homedir+"/.arkadaşlar"
eğer FileTest.exists?(arkadaşlar) ve FileTest.readable?(arkadaşlar) o zaman
File.new(arkadaşlar).her biri |arkadaş|
=~ friend.chomp'tan ise
"Arkadaştan posta" +friend.chomp günlüğü
kaydet("=gelen kutusu")
dönüş
son
son
son

Tamam, biri size e-posta gönderirse ve bu özellikle size yönelikse (ve kusarsa-
posta zaten başka bir biçimde yakalamadı), o zaman spam olabilir veya olmayabilir: koy
"gri" bir klasöre:

benim_adreslerim= [ /me@example\.com/i,
/me@example\.org/i,
/me@example\.net/i]; # Üç e-posta adresim var
my_addresses.each yap |addr|
if headers.matches(["To","Cc"],addr) o zaman
save("=muhtemelen-spam değil")
dönüş
son
son

Ve bundan sonra, eğer tanıdığınız birinden değilse ve e-posta adresinize gönderilmediyse
ya da adres, o zaman muhtemelen spam olduğunu varsaymak için kaydedilir:

kaydet("=spam")
dönüş

Ancak bu, bir Bayes filtresi kullanılarak geliştirilebilir; örneğin, Eric Raymond'ın
bogofilter programı (http://bogofilter.sourceforge.net) otomatik olarak eğitilebilir ve
beyaz/gri/siyah ayrımları yardımıyla kullanılır. Yukarıdaki örneği ele alarak, ben
bogofilter'a çağrılar ekleyerek ayarlayın:

arkadaşlar=homedir+"/.arkadaşlar"
eğer FileTest.exists?(arkadaşlar) ve FileTest.readable?(arkadaşlar) o zaman
File.new(arkadaşlar).her biri |arkadaş|
=~ friend.chomp'tan ise
"Arkadaştan posta" +friend.chomp günlüğü
pipe("bogofilter -h") # <-- SATIR BURAYA EKLENDİ
kaydet("=gelen kutusu")
dönüş
son
son
son

"bogofilter -h", beyaz listedeki kişilerden gelen postaların gönderilmemesi için bogofilter'ı eğitir
spam olarak kabul edilir. Tamam, .gurgitate kurallarının sonunda, değiştir

kaydet("=spam")
dönüş

için

kaydet("=spam")
boru ("bogofilter -s")
dönüş

Bu, filtrenin geri kalanını geçmeyen herhangi bir şeyin olması gerektiği gibi "bogofilter" eğitir.
spam olarak kabul edilir. Şimdi ilginç kısım için: Kullanmak için bunlar arasındaki biti değiştirin
E-postanın spam olarak kabul edilip edilmeyeceğine karar vermek için "bogofilter":

benim_adreslerim= [ /me@example\.com/i,
/me@example\.org/i,
/me@example\.net/i]; # Üç e-posta adresim var
my_addresses.each yap |addr|
if headers.matches(["To","Cc"],addr) o zaman
if pipe("bogofilter")==1
sonra
log("bogofilter spam olmayabileceğinden şüpheleniyor")
save("=muhtemelen-spam değil")
başka
log("bogofilter muhtemelen spam olduğunu düşünüyor")
kaydet("=spam")
son
dönüş
son
son

"bogofilter", mesajın istenmeyen posta olmadığını düşünüyorsa "1" ve varsa "0" çıkış koduna sahiptir.
mesajın spam olduğunu düşünüyor.

Umarım bu size kullanabileceğiniz şeyler hakkında bir fikir verir.
için "bogfiltre".

onworks.net hizmetlerini kullanarak gurgitate-mail'i çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

  • 1
    derin temizlik
    derin temizlik
    Tüm yapıyı bozan bir Kotlin betiği
    Gradle/Android projelerinden önbellekler.
    Gradle veya IDE izin verdiğinde kullanışlıdır
    aşağı. Komut dosyası üzerinde test edildi
    macOS, ancak ...
    derinlemesine temizlemeyi indirin
  • 2
    Eclipse Checkstyle Eklentisi
    Eclipse Checkstyle Eklentisi
    Eclipse Checkstyle eklentisi
    Checkstyle Java kodunu entegre eder
    denetçi Eclipse IDE'ye. bu
    eklenti gerçek zamanlı geri bildirim sağlar
    kullanıcı viol hakkında...
    Eclipse Checkstyle Eklentisini İndirin
  • 3
    AstroOrzOyuncu
    AstroOrzOyuncu
    AstrOrz Player ücretsiz bir medya oynatıcıdır
    yazılım, WMP ve VLC tabanlı kısım. bu
    oynatıcı, minimalist tarzda,
    ondan fazla tema rengi ve ayrıca
    b ...
    AstrOrzPlayer'ı indirin
  • 4
    film başlatıcısı
    film başlatıcısı
    Kodi Movistar+ TV, XBMC/ için bir ADDON'dur
    Kod, bir öğe dağıtılmasına izin verebilir
    IPTV hizmetlerinin kod çözücüsü
    Movistar tek bir cihazda entegre
    medya merkezleri ma...
    movistartv'yi indir
  • 5
    Code :: Blocks
    Code :: Blocks
    Code::Blocks ücretsiz, açık kaynaklı,
    platformlar arası C, C++ ve Fortran IDE
    en zorlu ihtiyaçları karşılamak için inşa edilmiştir
    kullanıcılarının Çok olacak şekilde tasarlanmıştır
    uzanır...
    Kodu İndir::Bloklar
  • 6
    ortasında
    ortasında
    Ortasında veya Gelişmiş Minecraft Arayüzü
    ve Veri/Yapı İzleme,
    Minecraft'a genel bir bakış göster
    dünya, aslında onu yaratmadan. Bilişim Teknoloji
    Yapabilmek ...
    Arada İndir
  • Daha fazla »

Linux komutları

Ad