ນີ້ແມ່ນຄໍາສັ່ງ shush ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
shush - ດໍາເນີນການຄໍາສັ່ງແລະທາງເລືອກໃນການລາຍງານຜົນຜະລິດຂອງຕົນທາງໄປສະນີ
ສະຫຼຸບສັງລວມ
shush [ -h | -V ]
shush [ -c dir ] [ -S | -s ສະຖານທີ່ ] [ -vfmk ] ຊື່ [ ID ]
shush [ -c dir ] [ -H to ] [ -R to ] [ -T to ] -ຄ ຊື່ [ stdout [ stderr ] ]
shush [ -i | -u | -r ] [ -c dir ]
ລາຍລະອຽດ
shush ດໍາເນີນການຄໍາສັ່ງແລະທາງເລືອກໃນການລາຍງານຜົນຜະລິດຂອງຕົນທາງໄປສະນີ. ມັນເປັນ wrapper ທີ່ເປັນປະໂຫຍດ
ປະມານວຽກ cron. ໂດຍຄ່າເລີ່ມຕົ້ນ, shush ຈະບໍ່ຜະລິດຜົນຜະລິດໃດໆໃນເວລາທີ່ແລ່ນເປັນ
ທຸກສິ່ງທຸກຢ່າງ (ຖ້າມີຫຍັງ) ແມ່ນລາຍງານທາງໄປສະນີ. ຢ່າງໃດກໍຕາມ, ການຕັ້ງຄ່າເຊັ່ນດຽວກັນກັບທີ່ສໍາຄັນ
ຂໍ້ຜິດພາດຈະຖືກລາຍງານກ່ຽວກັບຄວາມຜິດພາດມາດຕະຖານແລະ (ທາງເລືອກ) syslog. ເນື່ອງຈາກວ່າ
ການຂັດຂວາງ shush ມີຜົນສະທ້ອນຮ້າຍແຮງລວມທັງການສູນເສຍຜົນຜະລິດໃດໆຈາກ
ຄໍາສັ່ງ, ສັນຍານທີ່ໃຊ້ທົ່ວໄປຕໍ່ໄປນີ້ແມ່ນຖືກລະເລີຍໂດຍ shush: SIGHUP, SIGINT, SIGQUIT
ແລະ SIGTERM. ຖ້າ ຫາກ ວ່າ ຫນຶ່ງ ກໍ່ ຕ້ອງ ການ ທີ່ ຈະ ຂ້າ ຕົວ ຢ່າງ ແລ່ນ ຂອງ shush ແທນທີ່ຈະຂ້າ
ຄໍາສັ່ງທີ່ຈັດການແລ່ນ, SIGKILL ອາດຈະໄດ້ຮັບການນໍາໃຊ້ແລະຈະເປັນການເຕືອນຂອງວິທີການ
ການປະຕິບັດດັ່ງກ່າວບໍ່ເຫມາະສົມໂດຍທົ່ວໄປແມ່ນ.
ສໍາລັບຄໍາສັ່ງທີ່ຈະດໍາເນີນການໂດຍໃຊ້ shush, ໄຟລ໌ການຕັ້ງຄ່າ ຊື່ ຕ້ອງມີຢູ່ໃນ
ໄດເລກະທໍລີການຕັ້ງຄ່າ ($HOME/.shush ໂດຍຄ່າເລີ່ມຕົ້ນ). ໄຟລ໌ນີ້ກໍານົດວິທີການຄໍາສັ່ງ
ຄວນດໍາເນີນການເຊັ່ນດຽວກັນໃນເວລາທີ່ຈະສົ່ງບົດລາຍງານທາງໄປສະນີ. ສໍາລັບລາຍລະອຽດທີ່ມີໃຫ້
ຕົວກໍານົດການການຕັ້ງຄ່າ, ເບິ່ງ CONFIGURATION ພາກລຸ່ມ.
ສອງໄຟລ໌ການຕັ້ງຄ່າເພີ່ມເຕີມອາດຈະມີຢູ່: name.stdout ແລະ ຊື່.stderr (ຕາມຄ່າເລີ່ມຕົ້ນ).
ໄຟລ໌ເຫຼົ່ານີ້ຖືກນໍາໃຊ້ເພື່ອເບິ່ງຜົນໄດ້ຮັບມາດຕະຖານແລະຄວາມຜິດພາດມາດຕະຖານ (ຕາມລໍາດັບ)
ຜະລິດໂດຍຄໍາສັ່ງ. ສໍາລັບລາຍລະອຽດກ່ຽວກັບວິທີການນໍາໃຊ້ເຫຼົ່ານີ້, ເບິ່ງ ຄໍາສັ່ງ OUTPUT ສ່ວນ
ຂ້າງລຸ່ມນີ້.
ໃນເວລາທີ່ -C ທາງເລືອກແມ່ນໄດ້ລະບຸໄວ້, shush ຈະໂຫຼດພຽງແຕ່ການຕັ້ງຄ່າ, ທາງເລືອກ
ວິເຄາະຜົນຜະລິດມາດຕະຖານແລະຄວາມຜິດພາດມາດຕະຖານຈາກໄຟລ໌ທີ່ກໍານົດໄວ້ແລະສຸດທ້າຍ
ຜະລິດບົດລາຍງານຕົວຢ່າງຖ້າຕ້ອງການ. ນີ້ອາດຈະຖືກນໍາໃຊ້ເພື່ອຜະລິດບົດລາຍງານຖ້າຫາກວ່າ shush
ລົ້ມເຫລວໃນການຢຸດເຊົາຢ່າງຖືກຕ້ອງໃນເວລາແລ່ນຄໍາສັ່ງ. (ຜົນໄດ້ຮັບມາດຕະຖານແລະຄວາມຜິດພາດຈາກ
ຄໍາສັ່ງແມ່ນໄດ້ພົບເຫັນໂດຍປົກກະຕິໃນໄຟລ໌ທີ່ຢູ່ພາຍໃຕ້ / tmp.
shush ແມ່ນສາມາດໃນການຄຸ້ມຄອງ crontab(5) ລາຍການໂດຍອີງໃສ່ການຕັ້ງຄ່າທີ່ກໍານົດໂດຍຜູ້ໃຊ້.
ນີ້ອາດຈະຖືກເຮັດໃນຫນຶ່ງໃນສອງວິທີ. ຖ້າໄຟລ໌ທີ່ມີຊື່ວ່າ "ກໍານົດເວລາ"ມີຢູ່ໃນ
ໄດເລກະທໍລີການຕັ້ງຄ່າ, ຫຼັງຈາກນັ້ນມັນຖືກອ່ານສໍາລັບຂໍ້ມູນການກໍານົດເວລາ. ແຕ່ລະສາຍຄວນ
ປະກອບມີລາຍການດຽວທີ່ມີສາມຊ່ອງຂໍ້ມູນທີ່ແຍກອອກໂດຍຊ່ອງຫວ່າງ. ທົ່ງນາແມ່ນ
(ຕາມລໍາດັບ) ຊື່ເຈົ້າພາບທີ່ເຂົ້າໃຊ້ ຫຼືຕົວອັກສອນ "*" ເພື່ອລວມເອົາທັງໝົດ
ເຈົ້າພາບ, ການຕັ້ງຄ່າ ຊື່, ແລະສຸດທ້າຍ, ຂໍ້ມູນການກໍານົດເວລາໃນຮູບແບບດຽວກັນ
ດັ່ງທີ່ຖືກນໍາໃຊ້ໂດຍ ກໍານົດເວລາ ພາລາມິເຕີ (ເບິ່ງຂ້າງລຸ່ມນີ້). ເພື່ອລະບຸເປັນ ID, ໃຊ້ ຊື່:ID ເປັນ
ພາກສະຫນາມທີສອງ. ຖ້າບໍ່ມີໄຟລ໌ທີ່ມີຊື່ວ່າ "ກໍານົດເວລາ", ແລ້ວ shush ກວດເບິ່ງການຕັ້ງຄ່າ
ໄດເລກະທໍລີສໍາລັບໄຟລ໌ການຕັ້ງຄ່າແລະເພີ່ມພວກມັນໃຫ້ກັບຜູ້ໃຊ້ປະຈຸບັນ crontab(5) ໄຟລ໌ເປັນ
ລະບຸໂດຍລວມ ກໍານົດເວລາ ພາລາມິເຕີ (ເບິ່ງຂ້າງລຸ່ມນີ້). ໄຟລ໌ທີ່ມີຊື່ເລີ່ມຕົ້ນດ້ວຍ
ຕົວອັກສອນ "#" ຫຼືສິ້ນສຸດດ້ວຍຕົວອັກສອນ "~" ແມ່ນຖືກລະເລີຍ.
OPTIONS
-h ສະແດງຂໍ້ຄວາມຊ່ວຍເຫຼືອສັ້ນໆ.
-V ສະແດງຂໍ້ມູນສະບັບ. ນຳໜ້າດ້ວຍ -v ເພື່ອສະແດງການລວບລວມເວລາເລີ່ມຕົ້ນ.
-c dir ລະບຸໄດເລກະທໍລີບ່ອນທີ່ການຕັ້ງຄ່າຖືກເກັບໄວ້.
-s ສະຖານທີ່
ກໍານົດສິ່ງອໍານວຍຄວາມສະດວກ syslog ເພື່ອໃຊ້ສໍາລັບການບັນທຶກ.
-S ປິດການນຳໃຊ້ການບັນທຶກ syslog.
-v ສຳເນົາຂໍ້ຄວາມບັນທຶກຂໍ້ມູນໄປຍັງຜົນຜະລິດມາດຕະຖານ.
-f ໂໝດໄວ: ການຕັ້ງຄ່າໃດກໍໄດ້ ການຊັກຊ້າແບບສຸ່ມ ຖືກລະເລີຍ.
-m ຕິດຕາມກວດກາແລະສະແດງຜົນຜະລິດມາດຕະຖານຂອງຄໍາສັ່ງແລະຄວາມຜິດພາດໃນເວລາທີ່ແທ້ຈິງ.
-k ຮັກສາໄຟລ໌ບັນທຶກຜົນຜະລິດຂອງຄໍາສັ່ງແທນທີ່ຈະລຶບພວກມັນອອກເມື່ອສໍາເລັດ.
-C ກວດເບິ່ງການຕັ້ງຄ່າໂດຍບໍ່ຕ້ອງໃຊ້ຄໍາສັ່ງໃດໆ.
-H to ສົ່ງບົດລາຍງານ HTML ຕົວຢ່າງໄປຫາຜູ້ຮັບທີ່ລະບຸ.
-R to ສົ່ງບົດລາຍງານຕົວຢ່າງທີ່ອຸດົມສົມບູນໄປຫາຜູ້ຮັບທີ່ລະບຸ.
-T to ສົ່ງບົດລາຍງານຕົວຢ່າງຂໍ້ຄວາມໄປຫາຜູ້ຮັບທີ່ລະບຸ.
-i ການນໍາໃຊ້ crontab(1) ການຕິດຕັ້ງໃຫມ່ crontab(5) ໄຟລ໌ສໍາລັບຜູ້ໃຊ້ປະຈຸບັນ. ຜູ້ໃຊ້
ຕ້ອງບໍ່ມີແລ້ວ crontab(5) ຍື່ນ.
-u ການນໍາໃຊ້ crontab(1) ເພື່ອອັບເດດຜູ້ໃຊ້ປັດຈຸບັນ crontab(5) ໄຟລ໌, ທີ່ຕ້ອງມີຢູ່ແລ້ວ
ມີຢູ່ແລ້ວ.
-r ເອົາລາຍການໃດນຶ່ງທີ່ເພີ່ມໂດຍ -u ທາງເລືອກຈາກຜູ້ໃຊ້ປະຈຸບັນ crontab(5).
CONFIGURATION
shush ໄຟລ໌ການຕັ້ງຄ່າປະກອບດ້ວຍພາກຕົ້ນຕໍ, ພາກລາຍງານ ແລະພາລາມິເຕີ.
ພາກສ່ວນຕົ້ນຕໍກໍານົດຕົວກໍານົດການທົ່ວໂລກເຊັ່ນດຽວກັນກັບຄ່າເລີ່ມຕົ້ນຂອງບົດລາຍງານ. ແຕ່ລະບົດລາຍງານ
ພາກສ່ວນເລີ່ມຕົ້ນດ້ວຍຊື່ຂອງບົດລາຍງານລະຫວ່າງວົງເລັບ. ສາຍທີ່ເລີ່ມຕົ້ນດ້ວຍ
ຕົວອັກສອນ "#" ຖືກລະເລີຍ. ພາລາມິເຕີຄວນຈະຖືກລະບຸພຽງແຕ່ຄັ້ງດຽວ. ຖ້າລະບຸ
ຫຼາຍຄັ້ງ, ທັງໝົດແຕ່ການປະກົດຕົວຄັ້ງສຸດທ້າຍຈະຖືກລະເລີຍ, ເວັ້ນເສຍແຕ່ຈະບັນທຶກໄວ້ເປັນຢ່າງອື່ນ.
ພາລາມິເຕີຖືກກໍານົດໂດຍໃຊ້ syntax ຕໍ່ໄປນີ້:
ຊື່=ມູນຄ່າ
ຫລື:
ຊື່@hostname=ມູນຄ່າ
ຫລື:
ຊື່%ID=ມູນຄ່າ
ຫຼືສຸດທ້າຍ:
ຊື່@hostname%ID=ມູນຄ່າ
ຮູບແບບທີສອງ ແລະສີ່ຈະຖືກລະເລີຍເວັ້ນເສຍແຕ່ shush ແມ່ນແລ່ນຕາມທີ່ລະບຸໄວ້
ຊື່ເຈົ້າພາບ. ຮູບແບບທີສາມແລະສີ່ອະນຸຍາດໃຫ້ກໍານົດຫຼາຍຕົວຢ່າງຂອງດຽວ
ໄຟລ໌ການຕັ້ງຄ່າ. ໄຟລ໌ການຕັ້ງຄ່າດັ່ງກ່າວຕ້ອງການຕົວຢ່າງ ID ທີ່ຈະລະບຸໄວ້ໃນ
ສັ່ງໃຫ້ແລ່ນ. ເສັ້ນການຕັ້ງຄ່າທີ່ໃຊ້ຮູບແບບທີສາມຫຼືສີ່ຈະຖືກລະເລີຍຖ້າຫາກວ່າ
ໄດ້ ID ພົບໃນແຖວນັ້ນບໍ່ກົງກັບຕົວຢ່າງ ID ໃຊ້ເພື່ອແລ່ນ shush.
ຕົວກໍານົດການຕໍ່ໄປນີ້ອາດຈະປາກົດຢູ່ໃນພາກຕົ້ນຕໍ:
ຄໍາສັ່ງ
ຄໍາສັ່ງທີ່ແທ້ຈິງທີ່ຈະດໍາເນີນການ. shush ກໍານົດສອງຕົວແປສະພາບແວດລ້ອມກ່ອນທີ່ຈະດໍາເນີນການ
ຄໍາສັ່ງ: SHUSH_NAME ຖືກກໍານົດໃຫ້ ຊື່, ແລະ SHUSH_ID ຖືກກໍານົດໃຫ້ ID.
config ນີ້ເປັນຄ່າເລີ່ມຕົ້ນໄປສູ່ເສັ້ນທາງເຕັມຂອງໄຟລ໌ການຕັ້ງຄ່າຫຼັກ. ອີກສອງຄົນ
ຊື່ໄຟລ໌ການຕັ້ງຄ່າແມ່ນໄດ້ມາໂດຍການຕື່ມ ".stdout" ແລະ ".stderr"
suffixes ກັບຄ່າຂອງພາລາມິເຕີນີ້.
ລັອກ ຖ້າຕັ້ງ, ພາລາມິເຕີນີ້ແນະນໍາ shush ເພື່ອໃຫ້ໄດ້ຮັບໄຟລ໌ lock ກ່ອນທີ່ຈະດໍາເນີນການ
ຄໍາສັ່ງ, ແລະກໍານົດການກະທໍາທີ່ຈະປະຕິບັດໃນກໍລະນີທີ່ lockfile ຖືກຈັດຂຶ້ນໂດຍຄົນອື່ນ
ຂະບວນການ. ຮູບແບບແມ່ນລາຍການຄຳສັ່ງທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ. ການກະທຳທີ່ຖືກຕ້ອງແມ່ນ: ກ
ໄລຍະເວລາ (ໃນລະຫວ່າງທີ່ shush ພຽງແຕ່ຄວນລໍຖ້າແລະສືບຕໍ່ພະຍາຍາມເພື່ອໃຫ້ໄດ້ຮັບ
lockfile), string "abort" (ຊີ້ໃຫ້ເຫັນວ່າ shush ຄວນຢຸດເຊົາໃນທັນທີ
ຖ້າຫາກວ່າ lockfile ມີຢູ່ແລ້ວ), string "ignore" (ຊີ້ໃຫ້ເຫັນວ່າ shush ຄວນ
ບໍ່ສົນໃຈທີ່ມີຢູ່ແລ້ວ lockfile), string "loop" (ເພື່ອຫມາຍບ່ອນທີ່ຈະເລີ່ມຕົ້ນອີກເທື່ອຫນຶ່ງຈາກ
ເມື່ອການປະຕິບັດທັງຫມົດໄດ້ຮັບການປະຕິບັດ) ແລະສະຕຣິງ "notify=" ປະຕິບັດຕາມດ້ວຍເມລ
ທີ່ຢູ່ທີ່ອີເມລແຈ້ງການຄວນຈະຖືກສົ່ງໄປ. ການປະຕິບັດແມ່ນປະຕິບັດໃນ
ຄໍາສັ່ງທີ່ເຂົາເຈົ້າໄດ້ຖືກສະຫນອງໃຫ້, ແລະ shush ຈະລໍຖ້າຕະຫຼອດໄປພະຍາຍາມເພື່ອໃຫ້ໄດ້ຮັບການ lockfile
ເມື່ອການດໍາເນີນການທັງຫມົດໄດ້ຖືກປະຕິບັດ, ເວັ້ນເສຍແຕ່ວ່າສາຍ "loop" ແມ່ນຫນຶ່ງໃນທີ່ກໍານົດໄວ້
ການກະທໍາ. ໄລຍະເວລາອາດຈະຖືກລະບຸໄວ້ໃນຫົວໜ່ວຍຂອງ w(eeks), d(ays), h(ours),
m(inutes) ຫຼື s(ວິນາທີ). ຖ້າບໍ່ມີຫົວຫນ່ວຍໃດຖືກລະບຸ, ຖືວ່າແມ່ນນາທີ.
lockfile
ໂດຍຕົວຢ່າງ, shush ຈະໃຊ້ໄຟລ໌ທີ່ຢູ່ໃນໄດເລກະທໍລີດຽວກັນກັບ
ໄຟລ໌ການຕັ້ງຄ່າ, ແລະຕັ້ງຊື່ຕາມການຕັ້ງຄ່າ ແລະຊື່ເຈົ້າພາບ. ສະຫຼັບກັນ
ຊື່ໄຟລ໌ອາດຈະຖືກລະບຸໂດຍໃຊ້ພາລາມິເຕີນີ້.
lockmsg
ຖ້າຕັ້ງ, ສະຕຣິງນີ້ຈະຖືກໃຊ້ເປັນຫົວຂໍ້ສໍາລັບການແຈ້ງເຕືອນລັອກຂໍ້ຄວາມ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ "[%u@%h] **PENDING** %N [%t]". ເບິ່ງ MAIL SUBJECT ພາກສ່ວນສໍາລັບການ
ລາຍລະອຽດກ່ຽວກັບຮູບແບບ.
ເສັ້ນທາງ shush ບໍ່ດັດແປງສະພາບແວດລ້ອມ, ຍົກເວັ້ນການຕັ້ງຄ່າ PATH ມີການປ່ຽນແປງຖ້າຫາກວ່າ ເສັ້ນທາງ
ພາລາມິເຕີຖືກກໍານົດ.
ການຊັກຊ້າແບບສຸ່ມ
ຖ້າພາລາມິເຕີນີ້ຖືກຕັ້ງ, shush ຈະລໍຖ້າເຖິງເວລາທີ່ກໍານົດໄວ້ກ່ອນ
ເລີ່ມຕົ້ນຄໍາສັ່ງເວັ້ນເສຍແຕ່ invoked ກັບ -f. ຫົວໜ່ວຍເວລາທີ່ຖືກຕ້ອງແມ່ນ: s(ວິນາທີ),
m(inutes), h(ours), d(ays), w(eeks). ຖ້າບໍ່ມີຫົວຫນ່ວຍຖືກລະບຸ, ມັນສົມມຸດວ່າ
ນາທີ.
ກໍານົດເວລາ
ນີ້ກໍານົດເວລາທີ່ຈະດໍາເນີນການຄໍາສັ່ງນີ້ເປັນວຽກ cron, ໃນ a crontab(5) ເຂົ້າກັນໄດ້
ຮູບແບບ. ຫຼາຍລາຍການອາດຈະຖືກລະບຸໂດຍໃຊ້ຕົວອັກສອນ ";" ເປັນຕົວແຍກ.
ລາຍການທີ່ນຳໜ້າດ້ວຍຕົວອັກສອນ "#" ຈະຖືກຂ້າມໄປ. ພາລາມິເຕີນີ້ບໍ່ແມ່ນ
ໃຊ້ໂດຍກົງໂດຍ shush ເພື່ອດໍາເນີນການຄໍາສັ່ງ, ແຕ່ຖືກນໍາໃຊ້ໂດຍ -i ແລະ -u ຕົວເລືອກ
mailmail
ນີ້ອາດຈະຖືກນໍາໃຊ້ເພື່ອ override ຄໍາສັ່ງທີ່ໃຊ້ເພື່ອສົ່ງ mail.
ຫອຍ ໂດຍຄ່າເລີ່ມຕົ້ນ, Bourne shell sh(1) ຖືກນໍາໃຊ້ເພື່ອດໍາເນີນການ ຄໍາສັ່ງ, ອະນຸຍາດໃຫ້ແກະໃດໆ
syntax ທີ່ຈະໃຊ້. ອາດມີການກຳນົດ shell ສຳຮອງໂດຍໃຊ້ພາລາມິເຕີນີ້.
ລັດ
ນີ້ກໍານົດໄດເລກະທໍລີທີ່ສະຖານະພາບຂອງ shush ຖືກບັນທຶກແລະເປັນຄ່າເລີ່ມຕົ້ນ
ໄດເຣັກທໍຣີ ".state" ພາຍໃຕ້ບ່ອນທີ່ການຕັ້ງຄ່າຕັ້ງຢູ່. ເກີດຄວາມຜິດພາດຂຶ້ນ
ຖ້າໄດເຣັກທໍຣີບໍ່ມີຢູ່ເວັ້ນເສຍແຕ່ວ່າຕົວເລືອກນີ້ບໍ່ໄດ້ຕັ້ງ. ການຕັ້ງຄ່ານີ້
ທາງເລືອກທີ່ຈະເປັນສະຕຣິງເປົ່າຈະປ້ອງກັນ shush ຈາກການຊ່ວຍປະຢັດສະຖານະພາບຂອງຕົນ. ປາຍ(1)
ໃຊ້ໄຟລ໌ຂອງລັດເຫຼົ່ານີ້ເພື່ອລາຍງານກ່ຽວກັບກໍລະນີທີ່ເຮັດວຽກຂອງ shush ເຊັ່ນດຽວກັນກັບທີ່ຜ່ານມາ
ແລ່ນ.
syslog ຕົວກໍານົດການນີ້ແມ່ນ ພຽງແຕ່ ໃຊ້ໂດຍ -i ແລະ -u ທາງເລືອກແລະບໍ່ມີຜົນກະທົບອື່ນໆ
shush. ມັນອະນຸຍາດໃຫ້ overriding ສະຖານທີ່ syslog ເລີ່ມຕົ້ນທີ່ໃຊ້ສໍາລັບການບັນທຶກແລະ
ກໍານົດໃນເວລາລວບລວມ. ຖ້າປະໄວ້ຫວ່າງເປົ່າ, ນີ້ຈະສະກັດກັ້ນການໃຊ້ syslog.
ຫມົດເວລາ
ຕົວກໍານົດການນີ້ອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອຄວບຄຸມໄລຍະເວລາ ຄໍາສັ່ງ ອາດຈະແລ່ນ. ມັນຄວນຈະເປັນ
ລາຍຊື່ຄຳສັ່ງທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ. ການປະຕິບັດທີ່ຖືກຕ້ອງແມ່ນ: ໄລຍະເວລາ (ໃນລະຫວ່າງທີ່
shush ພຽງ ແຕ່ ຄວນ ລໍ ຖ້າ ສໍາ ລັບ ການ ຄໍາສັ່ງ ເພື່ອຢຸດ), ສັນຍານ (ບໍ່ວ່າຈະ "SIGNAME"
ຫຼື "-SIGNUMBER") ທີ່ຄວນຈະຖືກສົ່ງໄປຫາ ຄໍາສັ່ງກຸ່ມຂະບວນການ, ສັນຍານ
(ທັງ "=SIGNAME" ຫຼື "=SIGNUMBER") ທີ່ຄວນຈະຖືກສົ່ງໄປຫາ ຫອຍ ໃຊ້ເພື່ອວາງໄຂ່
ໄດ້ ຄໍາສັ່ງ, string "loop" (ເພື່ອຫມາຍບ່ອນທີ່ຈະເລີ່ມຕົ້ນອີກເທື່ອຫນຶ່ງຈາກເວລາການດໍາເນີນການທັງຫມົດ
ໄດ້ຮັບການປະຕິບັດ) ແລະສະຕຣິງ "notify=" ປະຕິບັດຕາມໂດຍທີ່ຢູ່ເມລທີ່ a
ຈົດໝາຍແຈ້ງຄວນຖືກສົ່ງ. ການປະຕິບັດໄດ້ຖືກປະຕິບັດໃນຄໍາສັ່ງທີ່ພວກເຂົາເປັນ
ສະຫນອງໃຫ້, ແລະ shush ຈະລໍຖ້າຕະຫຼອດໄປຖ້າຫາກວ່າ ຄໍາສັ່ງ ແມ່ນຍັງແລ່ນຄັ້ງດຽວ
ການປະຕິບັດໄດ້ຖືກປະຕິບັດເວັ້ນເສຍແຕ່ວ່າ string "loop" ແມ່ນຫນຶ່ງໃນການປະຕິບັດທີ່ກໍານົດໄວ້.
ໄລຍະເວລາອາດຈະຖືກລະບຸໄວ້ໃນຫົວໜ່ວຍຂອງ w(eeks), d(ays), h(ours), m(inutes) ຫຼື
s(ວິນາທີ). ຖ້າບໍ່ມີຫົວຫນ່ວຍໃດຖືກລະບຸ, ຖືວ່າແມ່ນນາທີ.
ຂໍ້ຄວາມໝົດເວລາ
ຖ້າຕັ້ງ, ສະຕຣິງນີ້ຈະຖືກໃຊ້ເປັນຫົວຂໍ້ສໍາລັບອີເມວການແຈ້ງເຕືອນໝົດເວລາ
ຂໍ້ຄວາມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "[%u@%h] **TIMEOUT** %N [%t]". ເບິ່ງ MAIL SUBJECT
ພາກສ່ວນສໍາລັບລາຍລະອຽດກ່ຽວກັບຮູບແບບ.
ພາລາມິເຕີຕໍ່ໄປນີ້ອາດຈະປາກົດຢູ່ບ່ອນໃດກໍໄດ້ໃນການຕັ້ງຄ່າ. ຖ້າຫາກວ່າລະບຸໄວ້ໃນ
ພາກສ່ວນຕົ້ນຕໍ, ພວກເຂົາເຈົ້າກໍານົດຄ່າເລີ່ມຕົ້ນທີ່ຈະນໍາໃຊ້ກັບບົດລາຍງານໃດໆສໍາລັບການ
ຕົວກໍານົດການດຽວກັນບໍ່ໄດ້ຖືກກໍານົດ.
to, cc, bcc
ບ່ອນທີ່ຈະສົ່ງບົດລາຍງານທາງໄປສະນີ.
ເລື່ອງ
ຫົວຂໍ້ຂອງບົດລາຍງານທາງໄປສະນີ. ເບິ່ງ MAIL SUBJECT ພາກສ່ວນສໍາລັບລາຍລະອຽດກ່ຽວກັບການ
ຮູບແບບ.
header ສ່ວນຫົວຈົດໝາຍເພີ່ມເຕີມ. ໃຫ້ສັງເກດວ່າພາລາມິເຕີນີ້ອາດຈະຖືກຊ້ໍາອີກເພື່ອກໍານົດ
ຫຼາຍຫົວ. ຢ່າງໃດກໍ່ຕາມ, ພຽງແຕ່ສ່ວນຫົວຈາກບົດລາຍງານ (ຖ້າລະບຸ) ຫຼືຈາກ
ພາກສ່ວນຕົ້ນຕໍຈະຖືກນໍາໃຊ້ສໍາລັບບົດລາຍງານທີ່ໃຫ້.
hostprefix
ໂດຍຄ່າເລີ່ມຕົ້ນ, ຫົວຂໍ້ທີ່ລະບຸໄວ້ຈະຖືກນຳໜ້າດ້ວຍຊື່ໂຮດລະຫວ່າງວົງເລັບ.
ພາລາມິເຕີນີ້ອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອປັບແຕ່ງຄໍານໍາຫນ້ານີ້. ຈຳນວນເຕັມບວກຊີ້ບອກ
ວິທີການຫຼາຍອົງປະກອບຂອງຊື່ເຈົ້າພາບທີ່ມີຄຸນວຸດທິຄົບຖ້ວນຄວນສະແດງໃຫ້ເຫັນ. ລົບ
integer ຊີ້ບອກເຖິງຈຳນວນອົງປະກອບຕາມຫຼັງຂອງຊື່ໂຮດທີ່ມີຄຸນສົມບັດຄົບຖ້ວນ
ຄວນໄດ້ຮັບການຕັດ. ເລກສູນສະແດງວ່າຄຳນຳໜ້າຄວນຖືກລະເວັ້ນ.
ພາລາມິເຕີນີ້ຖືກລະເລີຍຖ້າ "ເລື່ອງ" ມີຕົວອັກສອນ "%".
ຄໍານໍາຫນ້າຜູ້ໃຊ້
ໂດຍຄ່າເລີ່ມຕົ້ນ, ຫົວຂໍ້ທີ່ລະບຸຈະຖືກນຳໜ້າດ້ວຍຊື່ຜູ້ໃຊ້ລະຫວ່າງວົງເລັບ.
ພາລາມິເຕີນີ້ອະນຸຍາດໃຫ້ຫນຶ່ງປິດການທໍາງານຄໍານໍາຫນ້ານີ້. ຄ່າທີ່ບໍ່ແມ່ນສູນໃດໆຊີ້ໃຫ້ເຫັນ
ຊື່ຜູ້ໃຊ້ຄວນຈະຖືກສະແດງໃນຂະນະທີ່ສູນເຮັດໃຫ້ຄໍານໍາຫນ້າຖືກລະເວັ້ນ. ນີ້
ພາລາມິເຕີຖືກລະເລີຍຖ້າ "ເລື່ອງ" ມີຕົວອັກສອນ "%".
output (ກ່ອນຫນ້ານີ້ "stderr")
ນີ້ ກໍານົດ ວິທີການ ໄດ້ ຄໍາສັ່ງ ມາດຕະຖານ output ແລະ ມາດຕະຖານ ຄວາມຜິດພາດ ມີ captured ແລະ
ລາຍງານ to ໄດ້ ຜູ້ໃຊ້: "ຜິດພາດ", "ປະສົມ", "ກ່ອນ". ເມື່ອໃດ ການນໍາໃຊ້ "ປະສົມ", ໄດ້
ຊື່.stderr configuration ເອກະສານ is ບໍ່ສົນໃຈ. ເມື່ອໃດ ການນໍາໃຊ້ "ຜິດພາດ" or "ກ່ອນ",
ບຸກຄົນ ບົດລາຍງານ ອາດຈະ ການນໍາໃຊ້ ຫນຶ່ງ of ໄດ້ ດັ່ງຕໍ່ໄປນີ້ ສອງ ເພີ່ມເຕີມ ທາງເລືອກໃນການ "ນອກ"
ແລະ "ຜິດ".
ຮູບແບບ ຂໍ້ຄວາມທາງໄປສະນີສົ່ງຜົນຜະລິດຂອງ ຄໍາສັ່ງ ອາດຈະຖືກສົ່ງໄປໃນສາມທີ່ແຕກຕ່າງກັນ
ຮູບແບບ: "ຂໍ້ຄວາມ" (ຄ່າເລີ່ມຕົ້ນ), "ປັບປຸງ" ຂໍ້ຄວາມຫຼື "html".
ຈຳກັດຂະໜາດ
ໂດຍຄ່າເລີ່ມຕົ້ນ, ຜົນຜະລິດທັງຫມົດຂອງ ຄໍາສັ່ງ ຖືກສົ່ງໃນບົດລາຍງານທາງໄປສະນີ. ນີ້
ພາລາມິເຕີອາດຈະຖືກນໍາໃຊ້ເພື່ອຈໍາກັດຂະຫນາດຂອງຜົນຜະລິດລວມຢູ່ໃນບົດລາຍງານ. ຫມາຍເຫດ
ຂະໜາດຂອງຈົດໝາຍທີ່ສົ່ງມາຈະໃຫຍ່ກວ່າ ເນື່ອງຈາກຂີດຈຳກັດນີ້ບໍ່ມີຜົນຕໍ່
ຫົວຈົດໝາຍ. ຂະຫນາດສາມາດຖືກກໍານົດເປັນຫນ່ວຍງານ m, k, b, c (MB, KB, Bytes).
ຖ້າບໍ່ມີຫົວໜ່ວຍໃດຖືກລະບຸ, ມັນສົມມຸດວ່າເປັນ KB. ຂີດຈຳກັດຂອງສູນສະແດງວ່າ
ຜົນຜະລິດບໍ່ຄວນຖືກຕັດອອກ.
if ບົດລາຍງານຈະຖືກສົ່ງພຽງແຕ່ຖ້າບໍ່ມີ if ເງື່ອນໄຂແມ່ນໄດ້ລະບຸໄວ້ຫຼືຖ້າຫາກວ່າລະບຸໄວ້ if
ເງື່ອນໄຂແມ່ນຄວາມຈິງ. syntax ເງື່ອນໄຂອະນຸຍາດໃຫ້ສໍາລັບຕົວປະຕິບັດການຕາມເຫດຜົນປົກກະຕິ
("||", "&&", "!"), ໂຕປະຕິບັດການປຽບທຽບ ("==", "!=", "<", "<=", ">", ">=") ແລະ
ຕົວປະຕິບັດການເລກຂັ້ນພື້ນຖານ ("+", "-"). ນອກເຫນືອໄປຈາກ counters ກໍານົດໂດຍ
ການຕັ້ງຄ່າ (ເບິ່ງ ຄໍາສັ່ງ OUTPUT ພາກລຸ່ມນີ້), ຕົວແປຕໍ່ໄປນີ້ອາດຈະ
ຖືກນໍາໃຊ້:
$exit ຖ້າຄໍາສັ່ງຢຸດເຊົາເປັນປົກກະຕິ, ນີ້ແມ່ນລະຫັດອອກຂອງມັນ. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນແມ່ນ
ລົບແລະຊີ້ບອກຕົວເລກສັນຍານທີ່ເຮັດໃຫ້ເກີດຄໍາສັ່ງ
terminate (ເຊັ່ນ: -1 ຊີ້ໃຫ້ເຫັນສັນຍານຫມາຍເລກ 1 ເຮັດໃຫ້ເກີດຄໍາສັ່ງທີ່ຈະ
ຢຸດຕິ).
$size ຂະໜາດຜົນຜະລິດ (ເປັນໄບຕ໌), ຄືກັນກັບ "$outsize + $errsize"
$outsize
ຂະໜາດ (ເປັນໄບຕ໌) ຂອງຜົນຜະລິດມາດຕະຖານ
$errsize
ຂະຫນາດ (ໃນ bytes) ຂອງຄວາມຜິດພາດມາດຕະຖານ
$lines ຈໍານວນຂອງເສັ້ນຜົນຜະລິດ
$outlines
ຈໍານວນຂອງສາຍຜົນຜະລິດມາດຕະຖານ
$errlines
ຈໍານວນຂອງເສັ້ນຄວາມຜິດພາດມາດຕະຖານ
$runtime
ຄໍາສັ່ງ ເວລາແລ່ນ (ເປັນວິນາທີ)
$utime ເວລາຂອງຜູ້ໃຊ້ທີ່ໃຊ້ໂດຍ ຄໍາສັ່ງ
$stime ທີ່ໃຊ້ເວລາລະບົບການນໍາໃຊ້ໂດຍ ຄໍາສັ່ງ
$tty 1 ຖ້າ shush ແມ່ນດໍາເນີນການຈາກ terminal (ຕົວຢ່າງການໂຕ້ຕອບ), 0 ຖ້າບໍ່ດັ່ງນັ້ນ.
MAIL ຫົວຂໍ້
ການ "lockmsg","ຂໍ້ຄວາມໝົດເວລາ"ແລະ"ເລື່ອງ" ພາລາມິເຕີອາດມີ tokens ຕໍ່ໄປນີ້
ເຊິ່ງໄດ້ຂະຫຍາຍອອກດັ່ງທີ່ອະທິບາຍໄວ້ຂ້າງລຸ່ມນີ້:
%% ຕົວອັກສອນ "%".
%h ຊື່ເຈົ້າພາບ
%
ຫຼື "%- "
A partial ຊື່ເຈົ້າພາບ: A ໃນທາງບວກ ຫລັກ ສະແດງໃຫ້ເຫັນວ່າ ວິທີການ ຈໍານວນຫຼາຍ ອົງປະກອບ of ໄດ້
ຢ່າງເຕັມສ່ວນ ມີຄຸນສົມບັດ hostname to ຮັກສາ; a ກະທົບທາງລົບ ຫລັກ ສະແດງໃຫ້ເຫັນວ່າ ວິທີການ ຈໍານວນຫຼາຍ
ຕາມຫລັງ ອົງປະກອບ of ໄດ້ ຢ່າງເຕັມສ່ວນ ມີຄຸນສົມບັດ hostname to ຕັດ.
%i ຕົວຢ່າງ ID
%n ການຕັ້ງຄ່າ ຊື່
%N ການຕັ້ງຄ່າ ຊື່ ແລະຕົວຢ່າງ ID
%r ຊື່ບົດລາຍງານ
%t ເວລາຜ່ານໄປ.
%u ຊື່ຜູ້ໃຊ້.
%U userid.
ຖ້າພົບຕົວອັກສອນ "%" ໃນ "ເລື່ອງ" ພາລາມິເຕີ, ຫຼັງຈາກນັ້ນ
"hostprefix"ແລະ"ຄໍານໍາຫນ້າຜູ້ໃຊ້" ຕົວກໍານົດການຖືກລະເລີຍ.
ຄໍາສັ່ງ OUTPUT
ພາຍຫຼັງທີ່ໄດ້ ຄໍາສັ່ງ ຢຸດຕິ, shush ຈະນໍາໃຊ້ເນື້ອໃນຂອງ name.stdout ແລະ
ຊື່.stderr ໄຟລ໌ (ຖ້າພວກເຂົາມີ) ເພື່ອເບິ່ງຜົນຜະລິດທີ່ຜະລິດໂດຍ ຄໍາສັ່ງ.
ໄຟລ໌ເຫຼົ່ານີ້ປະຕິບັດຕາມຮູບແບບທີ່ງ່າຍດາຍ. ແຕ່ລະສາຍແມ່ນປະກອບດ້ວຍຕົວອັກສອນດຽວ (the
counter name) ຕາມດ້ວຍການສະແດງຜົນປົກກະຕິ.
ຕົວນັບທັງໝົດຖືກຕັ້ງເລີ່ມຕົ້ນເປັນ 0 (ສູນ). ແຕ່ລະເສັ້ນຜົນຜະລິດຖືກຈັບຄູ່ກັບສິ່ງເຫຼົ່ານີ້
ການສະແດງອອກເປັນປົກກະຕິຈົນກ່ວາການຈັບຄູ່ຈະພົບເຫັນ. ຖ້າພົບການຈັບຄູ່, ຕົວນັບທີ່ກ່ຽວຂ້ອງ
ແມ່ນເພີ່ມຂຶ້ນໂດຍຫນຶ່ງ. ເຄົາເຕີເຫຼົ່ານີ້ອາດຈະຖືກໃຊ້ເປັນສ່ວນໜຶ່ງຂອງການຕັ້ງຄ່າຫຼັກ,
ໃນ "if" ຕົວກໍານົດການກໍາຫນົດຄ່າ, ອະນຸຍາດໃຫ້ການຕັດສິນໃຈທີ່ຈະສົ່ງບົດລາຍງານທາງໄປສະນີເປັນ
ອີງຕາມຈໍານວນຄັ້ງທີ່ສໍານວນປົກກະຕິທີ່ແນ່ນອນໄດ້ຖືກຈັບຄູ່.
ສຸດທ້າຍ, ການສະແດງອອກປົກກະຕິອາດຈະກໍານົດການສະແດງອອກຍ່ອຍເຊິ່ງຈະຖືກສະແດງເປັນຕົວຫນາໃນ
ບົດລາຍງານທາງໄປສະນີ.
ແຖວທີ່ເລີ່ມຕົ້ນດ້ວຍຕົວອັກສອນ "#" ຖືວ່າເປັນຄຳເຫັນ ແລະຖືກລະເລີຍ. ໂດຍ
ຄ່າເລີ່ມຕົ້ນ, ການສະແດງອອກປົກກະຕິມາດຕະຖານຖືກນໍາໃຊ້, ເວັ້ນເສຍແຕ່ວ່າແຖວທໍາອິດແມ່ນ "#pcre" ໃນນັ້ນ
case Perl ການສະແດງອອກປົກກະຕິທີ່ເຂົ້າກັນໄດ້ຖືກນໍາໃຊ້.
ENVIRONMENT ຄວາມຮັບຜິດຊອບ
ຫນ້າທໍາອິດຖ້າຫາກວ່າ -c ທາງເລືອກທີ່ບໍ່ໄດ້ນໍາໃຊ້, shush ຈະຊອກຫາໄຟລ໌ການຕັ້ງຄ່າໃນ
$HOME/.shush.
SHUSH_SENDMAIL
ຖ້າກໍານົດ, ນີ້ຄວນຈະຊີ້ໃຫ້ເຫັນເຖິງ mailmail(1) ສອງ. ຕົວແປນີ້ overrides
ໄດ້ "mailmail" ການຕັ້ງຄ່າການຕັ້ງຄ່າແລະຄວນຈະຖືກນໍາໃຊ້ຢ່າງລະມັດລະວັງ.
TMPDIR Directory ບ່ອນທີ່ໄຟລ໌ຊົ່ວຄາວຖືກສ້າງຂື້ນ.
EXAMPLE
ການຕັ້ງຄ່າຕໍ່ໄປນີ້ແລ່ນ "shush -c /etc/shush -u" ປະຈໍາວັນໃນເວລາ 9:00, ປັບປຸງຜູ້ໃຊ້.
(ຮາກ) crontab:
command=shush -c /etc/shush -u
ຕາຕະລາງ=0 9 * * *
lock=notify=root-logs,abort
timeout=5m,loop,notify=root-logs,15m
stderr=ທຳອິດ
format=ຂໍ້ຄວາມ
Subject=Crontab ອັບເດດປະຈໍາວັນ
[ບັນທຶກ]
to=root-logs
[ຜູ້ອ່ານ]
if=$exit != 0 || $outlines != 1 || $errsize > 0 || U
to=ຮາກ
format=ອຸດົມສົມບູນ
ການຕັ້ງຄ່າທີ່ກ່ຽວຂ້ອງສໍາລັບຜົນຜະລິດມາດຕະຖານແມ່ນ:
Oshush: crontab ອັບເດດ\.$
U^.+$
ແລະສໍາລັບຄວາມຜິດພາດມາດຕະຖານ:
U^.+)$
ລັອກຈະຖືກຕັ້ງໃນຂະນະທີ່ແລ່ນຄໍາສັ່ງ, ແລະເມລຖືກສົ່ງໄປຫາ "root" ແລະ "root-logs" ຖ້າ
lock ແມ່ນຖືໂດຍຂະບວນການອື່ນໃນເວລາທີ່ shush ເລີ່ມຕົ້ນ, ໃນກໍລະນີນີ້ shush ຈະເອົາລູກອອກ. ກ
ເມລຍັງຈະຖືກສົ່ງໄປຫາ "root" ແລະ "root-logs" ຖ້າ "shush -c /etc/shush -u" ແລ່ນສໍາລັບເພີ່ມເຕີມ
ຫຼາຍກວ່າ 5 ນາທີ, ແລະສໍາລັບທຸກໆ 15 ນາທີປະຕິບັດຕາມ 5 ນາທີທໍາອິດ.
ເມື່ອສໍາເລັດ, ຜົນໄດ້ຮັບຈະຖືກສົ່ງໄປຫາ "root-logs". ນອກຈາກນັ້ນ, ຜົນຜະລິດ
ຈະຖືກສົ່ງໄປທີ່ "root" ຖ້າເງື່ອນໄຂ "$exit != 0 || $outlines != 1 || $errsize > 0 ||
U" ເປັນຄວາມຈິງ. ເພື່ອໃຫ້ເງື່ອນໄຂນີ້ເປັນຄວາມຈິງ, ຫນຶ່ງໃນສິ່ງທີ່ຕໍ່ໄປນີ້ຕ້ອງເປັນຄວາມຈິງ: ທາງອອກ
ລະຫັດບໍ່ແມ່ນສູນ, ຜົນຜະລິດມາດຕະຖານຄໍາສັ່ງບໍ່ແມ່ນເສັ້ນດຽວ, ມີຜົນຜະລິດຢູ່
ຄວາມຜິດພາດມາດຕະຖານຫຼືສຸດທ້າຍ, ຕົວຕ້ານ "U" ບໍ່ແມ່ນສູນ. ສໍາລັບ counter "U" ບໍ່ແມ່ນ
ສູນ, ຕ້ອງມີຜົນຜະລິດໃນມາດຕະຖານຜົນຜະລິດນອກເຫນືອຈາກເສັ້ນ "shush: crontab
ປັບປຸງ.". ສຸດທ້າຍ, ເສັ້ນຜົນຜະລິດໃດໆທີ່ຜະລິດຢູ່ໃນຄວາມຜິດພາດມາດຕະຖານຈະຖືກສະແດງ
ໃນ bold ໃນ mails ສົ່ງ ໄປ "ຮາກ " .
ໃຊ້ shush ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net