นี่คือคำสั่ง dacssched ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
dacssched - การตั้งเวลาคำสั่งตามกฎ
เรื่องย่อ
เรียบร้อย [-h | -ช่วยด้วย] [-NS log_level] [-q--r | -กฎ} rule_uri]
[{-s | - กำหนดการ} sched_uri] [-v]
DESCRIPTION
โปรแกรมนี้เป็นส่วนหนึ่งของ ดีแคส ห้องชุด เป็นโปรแกรมแบบสแตนด์อโลนที่ไม่ยอมรับ
ปกติ ดีแคส ตัวเลือกบรรทัดคำสั่ง (แดชอพชั่น) หรือเข้าถึงใด ๆ ดีแคส องค์ประกอบ
ไฟล์
การขอ เรียบร้อย คำสั่งรันโปรแกรมอื่นเมื่อตรงตามเงื่อนไขที่กำหนด มันไม่
โดยการตรวจสอบตารางเวลาเป็นระยะ ซึ่งในแต่ละเหตุการณ์ที่กำหนดไว้ จะระบุ
เงื่อนไขที่จำเป็นและบรรทัดคำสั่งที่จะดำเนินการหากเงื่อนไขเป็น
พอใจ. กฎจะถูกเก็บไว้แยกต่างหากจากกำหนดการ แม้ว่าในเวอร์ชันอนาคตก็
อาจเป็นไปได้ที่จะมีพวกเขาด้วยตารางเวลาของพวกเขา
แม้ว่า เรียบร้อย มีแนวความคิดคล้ายกับ cron(8)[1] ที่รัน(8)[2] และโปรแกรมอื่นๆ
ใช้เพื่อกำหนดเวลาคำสั่งที่จะดำเนินการหรือเตือนให้ส่งในเวลาที่กำหนดหรือ
วันที่มีความแตกต่างที่สำคัญบางประการ ประการแรก เนื่องจาก ดีแคส การประเมินกฎ
มีการใช้เอ็นจิ้น เงื่อนไขที่กว้างและซับซ้อนกว่าเพียงแค่เวลาหรือวันที่จะเป็นได้
ใช้เพื่อกำหนดเวลาคำสั่ง - ดีแคส การแสดงออก[3] มีจำหน่ายแล้ว ตัวอย่างเช่น กฎที่จะ
จัดการการสำรองไฟล์อัตโนมัติสามารถเขียนโดยคำนึงถึงบริบทอื่นนอกเหนือจาก
แค่วันในสัปดาห์และช่วงเวลาของวัน หากจำเป็น แม้จะเรียกใช้งานภายนอก
โปรแกรมที่ช่วยในการตัดสินใจ ประการที่สอง ทั้งกำหนดการและกฎเกณฑ์
อ้างอิงโดยตารางเวลาสามารถเข้าถึงได้ผ่าน ดีแคส virtual filestore ซึ่งหมายความว่าพวกเขา
สามารถเก็บไว้ในไฟล์หรือฐานข้อมูล ดึงข้อมูลโดย HTTP และอื่นๆ
หมายเหตุ
แม้ว่าโปรแกรมนี้อาจมีประโยชน์ แต่ปัจจุบันเป็นเพียงต้นแบบสำหรับ
วัตถุประสงค์ในการสาธิตและการทดลอง ความสามารถในการกำหนดค่าคุณสมบัติบางอย่าง
และยังไม่ได้ดำเนินการตามขั้นตอนความปลอดภัยที่กำหนดโดยเวอร์ชันที่ใช้งานจริง NS
ต้องเรียกใช้ต้นแบบเป็นระยะ เวอร์ชันที่ใช้งานจริงจะทำงานใน
พื้นหลังและสแกนกำหนดการใหม่โดยอัตโนมัติตามความถี่ที่กำหนด สังเกตว่า
เนื่องจากมีความยืดหยุ่น จึงต้องมีการสำรวจตารางเวลาด้วยความถี่ที่เหมาะสม - in
โดยทั่วไป โปรแกรมไม่สามารถคำนวณได้ว่าจะเกิดเหตุการณ์ตามกำหนดการครั้งต่อไปเมื่อใด อีกด้วย
เนื่องจากเหตุการณ์ไม่จำเป็นต้องถูกทริกเกอร์ตามเวลาหรือวันที่ เหตุการณ์บางอย่างอาจต้อง
"พิการทางกาย" เพื่อไม่ให้ถูกประหารชีวิตซ้ำๆ โดยไม่ได้ตั้งใจ
การดำเนินการ
โปรแกรมโหลด a กำหนดซึ่งมาจากไฟล์เริ่มต้นหรือตำแหน่ง
ระบุไว้ในบรรทัดคำสั่ง กำหนดการคือไฟล์ข้อความธรรมดา ซึ่งแต่ละบรรทัดคือ
ว่างเปล่า ความคิดเห็น หรือเหตุการณ์ที่กำหนดไว้ ไฟล์ได้รับการประมวลผลตามลำดับที่
เหตุการณ์ปรากฏขึ้นจากด้านบน ช่องว่างเริ่มต้นในบรรทัดใดๆ จะถูกละเว้น คอมเมนต์ไลน์
ขึ้นต้นด้วยอักขระ "#" เหตุการณ์ที่กำหนดไว้ประกอบด้วย a พร้อมชื่อตามด้วยช่องว่าง
ตามด้วยคำสั่ง ถ้า พร้อมชื่อ ประเมินถึง จริง (กล่าวคือให้สิทธิ์เข้าถึง) คำสั่งคือ
ดำเนินการผ่าน ระบบ(3)[4]. หากการประเมินกฎล้มเหลวเนื่องจากข้อผิดพลาด เหตุการณ์คือ
ไม่ได้ดำเนินการ เหตุการณ์จะไม่ถูกลบออกจากกำหนดการหลังจากที่ได้รับคำสั่งแล้ว
ดำเนินการ
A พร้อมชื่อซึ่งต้องขึ้นต้นด้วยเครื่องหมายทับไม่มีความสำคัญกับ เรียบร้อย; มันเป็นเพียง
ป้ายกำกับที่ใช้ระบุกฎที่จะใช้และจับคู่กับบริการของกฎ
ธาตุ.
นี่คือกำหนดการง่ายๆ ที่มีหนึ่งเหตุการณ์:
#กำหนดการง่ายๆ
/setdate /usr/local/sbin/rdate -a
หากเงื่อนไขที่มีป้ายกำกับ /setdate คือ จริง คำสั่งที่ระบุจะถูกดำเนินการ
กฎง่ายๆ ดังต่อไปนี้อาจเกี่ยวข้องกับเหตุการณ์:
เวลา (ชั่วโมง) เท่ากับ 2 และ เวลา(นาที) เท่ากับ 0
กฎนี้เปิดใช้งานเหตุการณ์ /setdate เวลา 2:00 น. ทุกวัน เราจะถือว่ากำหนดการ
ถูกประมวลผลหนึ่งครั้งต่อนาที
ภายใน เรียบร้อย แปลงเหตุการณ์ที่กำหนดเวลาไว้ด้านบนเป็นนิพจน์:
กฎ ("/setdate", กฎ_uri)
(ในกรณีที่ กฎ_uri ระบุชุดกฎที่จะใช้) แล้วประเมินนิพจน์ โปรด
อ้างถึงไฟล์ กฎ เพรดิเคต[5] สำหรับข้อมูลเพิ่มเติม
OPTIONS
อาร์กิวเมนต์จะได้รับการประมวลผลเมื่อตรวจสอบ (ซ้ายไปขวา) และลำดับของอาร์กิวเมนต์ได้
สำคัญ.
โดยค่าเริ่มต้น โปรแกรมจะค้นหาตารางเวลาในไฟล์
${การประชุม::DACS_HOME}/dacssched/sched. (ค่าเริ่มต้น: /usr/local/dacs/dacssched/sched) ค่าเริ่มต้น
สถานที่สำหรับกฎคือ ${การประชุม::DACS_HOME}/dacssched/acls. (ค่าเริ่มต้น:
/usr/local/dacs/dacssched/acls)
รู้จักแฟล็กบรรทัดคำสั่งต่อไปนี้:
-h
พิมพ์คำชี้แจงการใช้งาน
-NS log_level
ตั้งค่าระดับเอาต์พุตการดีบักเป็น log_level (ดู แดช(1)(6)) ระดับเริ่มต้นคือ
เตือนและ -v ธงกระแทกระดับเพื่อดีบักหรือติดตาม
-q
เงียบ ยกเว้นข้อความแสดงข้อผิดพลาด NS -v และ -NS แฟล็กเป็นอิสระจากสิ่งนี้
-r กฎ_uri
-กฎ กฎ_uri
แฟล็กนี้ระบุชุดกฎที่จะใช้ อาจเป็นชื่อพาธสัมบูรณ์หรือ URI ใน
ไวยากรณ์ของ วีเอฟเอส[7] คำสั่งการกำหนดค่า ตัวอย่าง:
-r "[acls1]dacs-fs:/local/acls"
-กฎ /usr/local/myrules
-s sched_uri
- กำหนดการ sched_uri
แฟล็กนี้ระบุกำหนดการ อาจเป็นชื่อพาธสัมบูรณ์หรือ URI ใน
วากยสัมพันธ์ของ วีเอฟเอส[7] คำสั่งการกำหนดค่า
-v
เพิ่มระดับของเอาต์พุตการดีบัก ธงสามารถทำซ้ำได้
วินิจฉัย
โปรแกรมออกจาก 0 หากทุกอย่างเรียบร้อย 1 หากเกิดข้อผิดพลาด
ใช้ dacssched ออนไลน์โดยใช้บริการ onworks.net
