นี่คือการทดสอบตะแกรงคำสั่งที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
sieve-test - ตัวทดสอบสคริปต์ Sieve ของ Pigeonhole
เรื่องย่อ
ตะแกรงทดสอบ [ตัวเลือก] ไฟล์สคริปต์ ไฟล์เมล
DESCRIPTION
เทศกาล ตะแกรงทดสอบ คำสั่งเป็นส่วนหนึ่งของโครงการ Pigeonhole (รังนกพิราบ(7)) ซึ่งเพิ่มตะแกรง
(RFC 5228) รองรับเซิร์ฟเวอร์ IMAP และ POP3 ที่ปลอดภัยของ Dovecot (นกพิราบ(พ.ศ. 1)).
การใช้ ตะแกรงทดสอบ คำสั่ง สามารถทดสอบการทำงานของสคริปต์ Sieve ได้ นี้ประเมิน
สคริปต์สำหรับข้อความที่จัดเตรียมไว้ ให้ชุดการกระทำของ Sieve เว้นแต่ -e ตัวเลือก
ถูกระบุ มันไม่ได้ดำเนินการการกระทำเหล่านี้จริง ๆ หมายความว่าจะไม่เก็บ
หรือส่งต่อข้อความได้เลย แต่จะพิมพ์รายการโดยละเอียดของสิ่งที่จะดำเนินการแทน
ปกติจะเกิดขึ้น โปรดทราบว่าแม้ในขณะที่ -e ถูกกำหนดไว้แล้ว ไม่เคยมีข้อความใดๆ
ส่งไปยังผู้รับ SMTP ระยะไกล ข้อความที่ส่งออกมักจะพิมพ์ไปที่ แย่
แทน.
นี่เป็นเครื่องมือที่มีประโยชน์มากในการดีบักการทำงานของสคริปต์ Sieve สามารถใช้เพื่อ
ตรวจสอบสคริปต์ที่ติดตั้งใหม่สำหรับพฤติกรรมที่ต้องการและสามารถให้รายละเอียดเพิ่มเติมได้
ข้อมูลเกี่ยวกับปัญหาการเรียกใช้สคริปต์ที่รายงานโดยปลั๊กอิน Sieve สำหรับ
ตัวอย่างโดยการติดตามการดำเนินการและประเมินผลคำสั่งและการทดสอบตามลำดับ
OPTIONS
-a ต้นทางผู้รับที่อยู่
ที่อยู่ผู้รับซองเดิม นี่คือสิ่งที่การทดสอบซองจดหมายของ Sieve จะ
เปรียบเทียบกับเมื่อมีการร้องขอส่วนซองจดหมาย "ถึง" การทดสอบและการดำเนินการบางอย่างจะ
ใช้สิ่งนี้เป็นที่อยู่อีเมลของเจ้าของสคริปต์ด้วย หากละเว้นตัวเลือกนี้
ที่อยู่ผู้รับถูกดึงมาจากส่วนหัวของข้อความ "Envelope-To:" หรือ "To:"
หากไม่มีส่วนหัวเหล่านี้ ที่อยู่ผู้รับจะมีค่าเริ่มต้นเป็น
[ป้องกันอีเมล].
-c config ไฟล์
เส้นทางไฟล์การกำหนดค่าทางเลือก Dovecot
-C การรวบรวมกำลัง โดยค่าเริ่มต้น ไบนารีที่คอมไพล์แล้วจะถูกเก็บไว้ในดิสก์ เมื่อสิ่งนี้
พบไบนารีในระหว่างการดำเนินการครั้งต่อไปของ ตะแกรงทดสอบ และเวลาในการปรับเปลี่ยน
เป็นไฟล์ที่ใหม่กว่าไฟล์สคริปต์ มีการใช้งานและไม่ได้รวบรวมสคริปต์
อีกครั้ง. ตัวเลือกนี้บังคับให้คอมไพล์สคริปต์ ดังนั้นจึงไม่สนใจของขวัญใดๆ
ไบนารี่. อ้างถึง ตะแกรง(1) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรวบรวม Sieve
-D เปิดใช้งานการดีบักตะแกรง
-d ไฟล์ดัมพ์
ทำให้ดัมพ์ของโค้ดที่สร้างขึ้นถูกเขียนไปยังไฟล์ที่ระบุ นี่คือ
เหมือนกับดัมพ์ที่ผลิตโดย ตะแกรงทิ้ง(1). การใช้ '-' เป็นชื่อไฟล์ทำให้
ดัมพ์ที่จะเขียนถึง แย่.
-e เปิดใช้งานการดำเนินการจริงของชุดการกระทำที่เป็นผลมาจากการรันสคริปต์
ร่วมกับ -l พารามิเตอร์ การส่งข้อความจริงสามารถเป็น
ทดสอบแล้ว โปรดทราบว่าการดำเนินการนี้จะไม่ส่งข้อความใดๆ ไปยังผู้รับ SMTP ระยะไกล
การกระทำดังกล่าวเพียงพิมพ์ข้อความขาออกไปที่ แย่.
-f ผู้ส่งซองจดหมาย
ที่อยู่ผู้ส่งซองจดหมาย (เส้นทางกลับ) นี่คือสิ่งที่การทดสอบซองจดหมายของ Sieve จะ
เปรียบเทียบกับเมื่อมีการร้องขอส่วนซองจดหมาย "จาก" นอกจากนี้ นี่คือที่ตอบสนอง
ข้อความจะ 'ส่ง' ถึง หากละเว้นตัวเลือกนี้ จะมีการเรียกที่อยู่ผู้ส่ง
จากส่วนหัวของข้อความ "เส้นทางกลับ:" "ผู้ส่ง:" หรือ "จาก:" ถ้าไม่มีสิ่งเหล่านี้
มีส่วนหัวอยู่เช่นกัน ที่อยู่ซองจดหมายผู้ส่งมีค่าเริ่มต้นเป็น
[ป้องกันอีเมล].
-l ที่ตั้งไปรษณีย์
ตำแหน่งของที่เก็บเมลของผู้ใช้ ไวยากรณ์ของตัวเลือกนี้ ที่ตั้งไปรษณีย์
พารามิเตอร์จะเหมือนกับที่ใช้สำหรับการตั้งค่า mail_location ใน Dovecot
ไฟล์คอนฟิก พารามิเตอร์นี้มักใช้ร่วมกับ -e เพื่อทดสอบ
การส่งข้อความจริง ถ้า -l จะถูกละเว้นเมื่อ -e ระบุไว้ ที่เก็บจดหมาย
การกระทำเช่น fileinto และ keep จะถูกข้ามไป
-m กล่องจดหมายเริ่มต้น
เมลบ็อกซ์ที่การดำเนินการ Keep เก็บข้อความ นี่คือ "INBOX" โดยค่าเริ่มต้น
-r ที่อยู่ผู้รับ
ที่อยู่ผู้รับซองสุดท้าย การทดสอบและการดำเนินการบางอย่างจะใช้สิ่งนี้เป็น
ที่อยู่อีเมลของเจ้าของสคริปต์ ตัวอย่างเช่นนี่คือสิ่งที่ใช้ในวันหยุด
การดำเนินการเพื่อตรวจสอบว่าคำตอบนั้นเหมาะสมหรือไม่ ถ้า -r ละเว้นตัวเลือก the
จะใช้ที่อยู่ผู้รับซองเดิมแทน (ดู -a ตัวเลือกเพิ่มเติม
ข้อมูล).
-s ไฟล์สคริปต์
ระบุสคริปต์เพิ่มเติมที่จะดำเนินการก่อนสคริปต์หลัก หลายรายการ -s
อาร์กิวเมนต์ได้รับอนุญาตและสคริปต์ที่ระบุจะดำเนินการตามลำดับใน
คำสั่งที่ระบุในบรรทัดคำสั่ง
-t ติดตามไฟล์
เปิดใช้งานการดีบักการติดตามรันไทม์ การดีบักการติดตามให้ข้อมูลเชิงลึกโดยละเอียดใน
การดำเนินการที่ดำเนินการโดยสคริปต์ Sieve อ้างถึงการดีบักการติดตามรันไทม์
ส่วนด้านล่าง ข้อมูลการติดตามถูกเขียนไปยังไฟล์ที่ระบุ โดยใช้ '-'
เนื่องจากชื่อไฟล์ทำให้ข้อมูลการติดตามถูกเขียนไปยัง แย่.
-T ติดตามตัวเลือก
กำหนดค่าการดีบักการติดตามรันไทม์ ซึ่งเปิดใช้งานด้วยอ็อพชัน -t อ้างถึง
ส่วนการดีบักการติดตามรันไทม์ด้านล่าง
-x ส่วนขยาย
ตั้งค่าส่วนขยายที่ใช้ได้ พารามิเตอร์เป็นรายการที่คั่นด้วยช่องว่างของ active
ส่วนขยาย โดยการเติมตัวระบุส่วนขยายด้วย + or -, นามสกุลสามารถ
รวมหรือแยกออกโดยสัมพันธ์กับชุดส่วนขยายที่ใช้งานอยู่ที่กำหนดค่าไว้ ถ้าไม่
นามสกุลมี + or - คำนำหน้า เฉพาะส่วนขยายที่ระบุไว้อย่างชัดเจน
จะเปิดใช้งาน ส่วนขยายที่ไม่รู้จักจะถูกละเว้นและมีการสร้างคำเตือน
ตัวอย่างเช่น -x "+imapflags -enotify" จะเปิดใช้งานส่วนขยาย imapflags ที่เลิกใช้แล้ว
และปิดการใช้งานส่วนขยาย enotify ส่วนที่เหลือของส่วนขยายที่ใช้งานอยู่ขึ้นอยู่กับ
ตะแกรง_ส่วนขยาย และ ตะแกรง_global_extensions การตั้งค่า. โดยค่าเริ่มต้น เช่น เมื่อ
ตะแกรง_ส่วนขยาย และ ตะแกรง_global_extensions ยังคงไม่มีการกำหนดค่า รองรับทั้งหมด
มีส่วนขยายให้ ยกเว้นส่วนขยายที่เลิกใช้แล้วหรือส่วนขยายที่หยุดนิ่ง
ภายใต้การพัฒนา
อาร์กิวเมนต์
ไฟล์สคริปต์
ระบุสคริปต์เพื่อ (คอมไพล์และ) ดำเนินการ
โปรดทราบว่าเครื่องมือนี้จะค้นหาไฟล์ไบนารีที่คอมไพล์ล่วงหน้าด้วย a .svbin นามสกุล
และมีชื่อฐานและเส้นทางเหมือนกับสคริปต์ที่ระบุ ใช้ -C ตัวเลือก
ปิดใช้งานลักษณะการทำงานนี้โดยบังคับให้คอมไพล์สคริปต์เป็นไบนารีใหม่
ไฟล์เมล
ระบุไฟล์ที่มีข้อความอีเมลที่จะทดสอบด้วย
การใช้
รันไทม์ ติดตาม การดีบัก
การใช้ -t ตัวเลือก, ตะแกรงทดสอบ เครื่องมือสามารถกำหนดค่าให้พิมพ์รายละเอียดการติดตาม
ข้อมูลเกี่ยวกับการดำเนินการสคริปต์ Sieve ไปยังไฟล์หรือเอาต์พุตมาตรฐาน ตัวอย่างเช่น
คำสั่งที่พบ การทดสอบที่ดำเนินการ และค่าที่ตรงกันสามารถพิมพ์ได้
การติดตามรันไทม์สามารถกำหนดค่าได้โดยใช้คำสั่ง -T ตัวเลือกซึ่งสามารถระบุได้หลายรายการ
ครั้ง สามารถใช้งานได้ดังนี้:
-เลเวล=...
ตั้งค่าระดับรายละเอียดของการดีบักการติดตาม ค่าใดค่าหนึ่งต่อไปนี้สามารถเป็น
ที่ให้มา:
การปฏิบัติ (เริ่มต้น)
พิมพ์เฉพาะคำสั่งการดำเนินการ เช่น Keep, fileinto, ปฏิเสธ และเปลี่ยนเส้นทาง
คำสั่ง
พิมพ์คำสั่งที่ดำเนินการ ยกเว้นคำสั่งทดสอบ
การทดสอบ
พิมพ์คำสั่งที่ดำเนินการทั้งหมดและการทดสอบที่ดำเนินการ
การจับคู่
พิมพ์คำสั่งที่ดำเนินการทั้งหมด การทดสอบที่ดำเนินการ และค่าที่ตรงกันในการทดสอบเหล่านั้น
-Tdebug
พิมพ์ข้อความแก้ไขข้อบกพร่องด้วย ซึ่งมักจะมีประโยชน์สำหรับนักพัฒนาเท่านั้นและมีแนวโน้มว่า
เพื่อสร้างผลงานที่ยุ่งเหยิง
-ที่อยู่
พิมพ์ที่อยู่รหัสไบต์สำหรับเอาต์พุตการติดตามปัจจุบัน ปกติเฉพาะตะแกรงปัจจุบัน
พิมพ์ตำแหน่งซอร์สโค้ด (หมายเลขบรรทัด) ที่อยู่รหัสไบต์มีค่าเท่ากับ
รายการที่อยู่ในการถ่ายโอนข้อมูลไบนารีที่ผลิตโดยใช้ -d ตัวเลือกหรือโดย ตะแกรงทิ้ง(1)
คำสั่ง
แก้ปัญหา ตะแกรง ส่วนขยาย
เพื่อปรับปรุงการดีบักสคริปต์ การใช้งาน Sieve นี้สนับสนุนภาษา Sieve แบบกำหนดเอง
ส่วนขยายที่เรียกว่า 'vnd.dovecot.debug' มันเพิ่ม debug_log คำสั่งที่อนุญาตให้เข้าสู่ระบบ
ข้อความดีบั๊ก
ตัวอย่าง:
ต้องการ "vnd.dovecot.debug";
ถ้าส่วนหัว :มี "หัวเรื่อง" "สวัสดี" {
debug_log "หัวเรื่องมีสวัสดี!";
}
เครื่องมือช่างเช่น ตะแกรงทดสอบ, ตะแกรง และ ตะแกรงทิ้ง มีการสนับสนุนสำหรับ vnd.dovecot.debug
ส่วนขยายที่เปิดใช้งานโดยค่าเริ่มต้นและไม่จำเป็นต้องเปิดใช้งานหรือปิดใช้งาน
ความพร้อมใช้งานของส่วนขยายการดีบักด้วย the -x ตัวเลือก. ข้อความที่บันทึกไว้จะถูกเขียนถึง
แย่ ในกรณีนี้.
ในทางตรงกันข้าม สำหรับปลั๊กอิน Sieve จริงสำหรับ Dovecot LDA (นกพิราบ-lda(1)) ที่
ต้องเปิดใช้งานส่วนขยาย vnd.dovecot.debug อย่างชัดเจนโดยใช้คำสั่ง ตะแกรง_ส่วนขยาย
การตั้งค่า จากนั้นข้อความจะถูกบันทึกลงในไฟล์บันทึกสคริปต์ส่วนตัวของผู้ใช้ ถ้าใช้ใน
สคริปต์ส่วนกลาง ข้อความจะถูกบันทึกผ่านระบบบันทึก Dovecot ที่เป็นค่าเริ่มต้น
EXIT สถานภาพ
ตะแกรงทดสอบ จะออกด้วยค่าใดค่าหนึ่งต่อไปนี้:
0 ดำเนินการสำเร็จแล้ว (EX_OK, EXIT_SUCCESS)
1 การดำเนินการล้มเหลว. สิ่งนี้จะส่งคืนสำหรับความล้มเหลวเกือบทั้งหมด (EXIT_FAILURE)
64 ระบุพารามิเตอร์ไม่ถูกต้อง (EX_USAGE)
ใช้ตะแกรงทดสอบออนไลน์โดยใช้บริการ onworks.net