ÇÁ¶ô¸ÞÀÏ ÄÁÇDZ×(procmailrc)

97/06/05
ÀÌ »ó ·Î

    1. ÄÁÇDZ׿¡ ¾Õ¼­¼­                                                                1
    2. ó¹æ(recipes)                                                                  1
    3. Flag                                                                           2
    4. Local lockfile                                                                 2
    5. Recipe action line(ó¹æ ½ÇÇà ¶óÀÎ)                                             2
    6. Environment variable defaults                                                  3
    7. ȯ°æ (Environment)                                                             3
    8. È®Àå Á¤±Ô½Ä(Extended regular expressions)                                      3
    9. ÁÖÀÇ »çÇ×                                                                      4
1. ÄÁÇDZ׿¡ ¾Õ¼­¼­

procmailrcÈ­ÀÏÀº ȯ°æº¯¼ö ¹× ó¹æ(recipes)°¡ µé¾î°£´Ù. ó¹æÀº µµÂøÇÑ ¸ÞÀÏÀÇ Çì´õ¸¦ ã´Â ÇÑÁÙÂ¥¸® ó¹æÀϼöµµ ÀÖ°í ¿©·¯ÁÙ¿¡ °ÉÄ£ ó¹æÀϼöµµ ÀÖ´Ù. ¸ÞÀÏÀÌ µµÂøÇϸé ÇÁ¶ô¸ÞÀÏÀº ¿ì¼± procmailrcÈ­ÀÏ¿¡¼­ ¸ÞÀÏÀ» ¾îµð·Î º¸³»¾ß ÇÒÁö °áÁ¤ÇÑ´Ù.(ÀϹÝÀûÀ¸·Î ÆÄÀÏ·Î) ¸¸ÀÏ ÆÄÀÏÀ» ¾îµð·Î º¸³»¾ß ÇÒÁö ¸ð¸¦ °æ¿ì´Â $DEFAULT º¯¼ö¿¡ ÁöÁ¤µÈ °÷À¸·Î º¸³½´Ù.

ó¹æ¿¡´Â deliverying¿Í non-deliveringÀÇ µÎ°¡Áö À¯ÇüÀÌ ÀÖ´Ù. deliverying ó¹æÀº ÀÌ Ã³¹æ¿¡ ÀÏÄ¡ÇÏ´Â ½ÇÇàÀ» ÇÑÈÄ ÀÌÈÄ Ã³¹æÀº ÇÏÁö ¾Ê´Â´Ù. non-deliverying ó¹æÀº ÀÌ Ã³¹æÀÌÈÄÀÇ Ã³¹æµµ °è¼Ó ¼öÇàÇÑ´Ù. Deliveryingó¹æÀ¸·Î´Â ¸ÞÀÏÀÇ Çì´õ³ª º»¹®À» ÆÄÀÏ·Î ±â·ÏÇϰųª ´Ù¸¥ ¸ÞÀÏÁÖ¼Ò·Î Æ÷¿öµùÇÏ´Â °æ¿ì°¡ ÀÌ¿¡ ÇØ´çÇÑ´Ù. non-deliverying ó¹æÀº ÇÁ·Î±×·¥À̳ª ÇÊÅÍÀ» ÅëÇØ ³ª¿Â °á°ú¸¦ ´Ù½Ã procmailÀÌ Ã³¸®Çϵµ·Ï ´Ù½Ã µ¹·ÁÁÖ´Â °æ¿ì°¡ ÇØ´çÇÑ´Ù.

±×·¯³ª deliverying modeÀ» ó¹æÀü¿¡ 'c'Ç÷¢À» ºÙÀÓÀ¸·Î¼­ non-deliverying mode·Î ó¹æÀ» ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ·¸°Ô Çϸé procmailÀº ¸ÞÀÏ º¹»çº»(carbon copy)À» »ç¿ëÇÏ¿© ´ÙÀ½ ó¹æÀ» °è¼ÓÇÏ°Ô ÇÑ´Ù.

procmailrcÈ­ÀÏ¿¡¼­ ȯ°æº¯¼ö ÁöÁ¤°ú ó¹æÀ» ¼¯¾î¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¸¸ÀÏ ¾î¶² ȯ°æº¯¼ö°¡ procmail¿¡ Ưº°ÇÑ Àǹ̸¦ °¡Áö¸é ÀÌ º¯¼ö°¡ ÇÊ¿äÇÑ ½Ã±â¿¡ ÀûÀýÈ÷ »ç¿ëµÉ ¼ö ÀÖ´Ù. (¿¹¸¦ µé¾î »õ·Î¿î MAILDIR º¯¼ö¿¡ ÁöÁ¤ÇÏ¿© ÇöÀç µð·ºÅ丮¸¦ ¹Ù²Ü¼ö ÀÖ´Ù.)

ȯ°æº¯¼öÀÇ ´ëü(substitutions)¿Í ÁöÁ¤(assingnment)À» »ç¿ëÇÏ´Â ¹æ¹ýÀº sh(1)¿¡¼­¿Í °°´Ù. sh(1)¿¡¼­¿Í °°ÀÌ '=' ¾ÕµÚ·Î ³ª¿À´Â °ø¹éÀº ¹«½ÃÇÑ´Ù.

#Àº ÄÚ¸àÆ®(comment)·Î¼­ ÀÌÈÄ ³ª¿À´Â ¸ðµç ¹®ÀÚ´Â ¹«½ÃÇÑ´Ù.

2. ó¹æ(recipes)

procfile¿¡¼­ ":" Ç¥½Ã·Î ½ÃÀÛÇÏ´Â ¶óÀÎÀº ó¹æÀÇ ½ÃÀÛÀÓÀ» ¶æÇÑ´Ù. ó¹æÀº º¸Åë ´ÙÀ½°ú °°Àº Çü½ÄÀ» °¡Áö°í ÀÖ´Ù.

:0 [flag] [ : [locallockfile] ]
<zero or more conditions (one per line)>
<exactly one action line>

'*'¹®ÀÚ·Î ½ÃÀÛÇÏ´Â Á¶°Ç¹®Àº ÀÌÈÄ ³ª¿À´Â ¸ðµç ¹®ÀÚ´Â ³»ºÎ egrep·Î º¸³»Á®¼­ 󸮵ȴٴ °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ Á¤±Ô½ÄÀº egrep(1)°ú ¿ÏÀüÈ÷ µ¿ÀÏÇÏ´Ù. Á¶°Ç¹®Àº Çϳªµµ »ç¿ëÇÏÁö ¾ÊÀ» ¼ö Àִµ¥ ÀÌ·¸ °æ¿ì µðÆúÆ®·Î °á°ú´Â 'Âü'°ªÀ» °¡Áø´Ù.

3. Flag

Flag·Î »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍÀº ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù.

´ÙÀ½ÀÇ ½ÄÀº Á¤±Ô½Ä°ú´Â Á» ´Ù¸¥ °ÍÀÌ´Ù.

4. Local lockfile

¸¸ÀÏ Ã¹ ¹øÂ°·Î ³ª¿À´Â 󹿶óÀο¡ ":"À» ´Ù½Ã ºÙÀ̸é procmailÀº local lockfileÀ» »ç¿ëÇÑ´Ù. local lockfileÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ´ë»óÈ­ÀÏÀ̸§À» »ç¿ëÇϰí $LOCKEXTÀ» ºÙÀδÙ.

5. Recipe action line(ó¹æ ½ÇÇà ¶óÀÎ)

½ÇÇà¶óÀÎÀº ´ÙÀ½°ú °°Àº ¹®ÀÚ·Î ½ÃÀÛÇÑ´Ù.

6. Environment variable defaults

LOGNAME, HOME, SHELL ¼ö½ÅÀÚÀÇ È¯°æ¿¡¼­ ã¾Æ³¿
SHELLMETAS &

ORGMAIL       @SYSTEM_MBOX@LOGNAME(-mÀÌ ÁöÁ¤µÇÁö ¾ÊÀº °æ¿ì)
MAILDIR       $HOME/ (rcÈ­ÀÏÀÌ "./"°ú °°ÀÌ ½ÃÀ۵Ǿú°Å³ª -mÀÌ ÁöÁ¤µÈ °æ¿ì.
                        -mÀÌ ÁöÁ¤µÈ °æ¿ì µðÆúÆ®·Î "."°¡ ÁöÁ¤µÈ´Ù)
DEFAULT       @ORGMAIL
MSGPREFIX     msg.
SENDMAIL      /usr/sbin/sendmail
SENDMAILFLAGS       -oi
HOST           È£½ºÆ® À̸§
COMSTAT      no
LOCKEXT       .lock

7. ȯ°æ (Environment)

MAILDIR       procmailÀÌ ½ÇÇàµÇ´Â ÇöÀç µð·ºÅ丮(¸ðµç °æ·Î´Â $MAIL·ÎºÎÅÍ »ó´ëÀûÀÌ´Ù)
DEFAULT       procmailÀº ¸ÞÀϹڽº¿¡ ¾²±âÀü¿¡ µðÆúÆ®·Î $DEFAULT$LOCKEXTÀ» »ç¿ëÇÑ´Ù.
                À̰ÍÀº Ưº°È÷ ÁöÁ¤ÇÒ Çʿ䰡 ¾ø´Ù.
LOGFILE        procmail¿¡¼­ ³ª¿À´Â ¿¡·¯³ª Áø´Ü³»¿ëÀ» ±â·ÏÇÒ ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù.
                ¸¸ÀÏ ÀÌ ÆÄÀÏÀÌ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é Áø´Ü°á°ú³ª ¿¡·¯°¡ ¸ÞÀÏÀ» º¸³½ »ç¶÷¿¡°Ô
                º¸³»Áø´Ù.
VERBOSE       procmailÀÌ ÀÛ¾÷ÇÏ´Â ³»¿ëÀ» Áø´ÜÇÒ °ÍÀÎÁö ¸»°ÍÀÎÁö ÁöÁ¤ÇÑ´Ù.
                º¯¼ö·Î´Â yes, on, no, off¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
LOGABSTRACT procmailÀÌ Á¾·áÇϱâÀü¿¡ Àü´ÞÇÑ ¸ÞÀÏÀ» $LOGFILE¿¡ From, Subject:³»¿ë¸¸À»
                ±â·ÏÇÑ´Ù. ÀÌ º¯¼ö °ªÀ» no·Î ¼³Á¤ÇÏ¸é ¿ä¾à logfileÀÌ »ý·«µÈ´Ù.
                º¯¼ö¸¦ all·Î ÁöÁ¤ÇÏ¸é ¼º°øÀûÀ¸·Î Àü´ÞÇÑ ¸ÞÀÏ¿¡ ´ëÇÑ log¸¦ »ý¼ºÇÑ´Ù.
LOG            ÀÌ º¯¼ö¿¡ ÁöÁ¤µÈ ¸ðµç °ÍÀº $LOGFILE¿¡ ±â·ÏµÈ´Ù.
ORGMAIL       ½Ã½ºÅÛ¿¡ ¼³Ä¡µÈ ¸ÞÀϽºÇ®ÀÇ ¸ÞÀϹڽº
LOCKFILE      ÀÌ ÆÄÀÏÀÌ ÀÌ¹Ì ÀÖÀ¸¸é procmailÀº ÀÌÈ­ÀÏÀÌ ¾ø¾îÁú¶§±îÁö ±â´Ù¸°´Ù.
LOGEXT        lockfileÀ» »ç¿ëÇÒ ¶§ È®ÀåÀÚ·Î »ç¿ëµÉ ¹®ÀÚ
LOCKSLEEP     lockfileÀ» Àç½ÃµµÇÒ ½Ã°£(µðÆúÆ®´Â 8ÃÊ)
LOCKTIMEOUT lockfileÀ» ¹«½ÃÇϰí Åë°úÇÒ ½Ã°£
SENDMAIL      ¸ðµç ¸ÞÀÏÀ» Æ÷¿öµùÇÒ ¶§ $SENDMAIL $SENDMAILFLAGS $@°ú °°ÀÌ »ç¿ë

8. È®Àå Á¤±Ô½Ä(Extended regular expressions)

^       ¶óÀÎÀÇ Ã³À½
$       ¶óÀÎÀÇ ³¡
.       °³Ç๮ÀÚ¿ÜÀÇ ¸ðµç ¹®ÀÚ
a*      all
a+      one or more
a?      zero or one
[^-a-d]   -,a,b,c,d¿ÜÀÇ ¹®ÀÚ
de|abc   de or abc
(abc)*
\.       single dot

9. ÁÖÀÇ »çÇ×