ฉันมีดรรชนีสำหรับสฟิงซ์และฉันต้องการให้มันรันทุก ๆ ชั่วโมงใน linux ฉันจะทำสิ่งนี้ได้อย่างไร
ฉันมีดรรชนีสำหรับสฟิงซ์และฉันต้องการให้มันรันทุก ๆ ชั่วโมงใน linux ฉันจะทำสิ่งนี้ได้อย่างไร
คำตอบ:
เนื่องจากคนอื่นโพสต์คำตอบสั้น ๆ ฉันคิดว่าฉันจะอธิบายได้มากกว่านี้เล็กน้อย ...
cron เป็น daemon ที่พบในระบบ * nix ส่วนใหญ่ที่รันคำสั่งที่กำหนดเวลาไว้ในช่วงเวลาที่ระบุ
คุณเพิ่มสคริปต์ลงในรายการโดยคัดลอกไปยังโฟลเดอร์ที่คุณเลือก:
โดยทั่วไปโฟลเดอร์เหล่านี้จะอยู่ใน/etcโฟลเดอร์
เพียงเพื่อจะแตกต่าง -
ขึ้นอยู่กับความต้องการของคุณคุณสามารถใช้คำสั่ง watch
watch --interval=3600 command
คุณจะแก้ไขไฟล์ cron โดยป้อนคำสั่ง crontab -e
ซึ่งจะนำคุณไปสู่เครื่องมือแก้ไข 'vi' (สำหรับ Linux และ FreeBSD ปัจจุบัน)
จากนั้นป้อนข้อมูลต่อไปนี้: (พิมพ์ 'i' เพื่อแทรก)
00 * * * * /path/to/sphinx_indexer.exe
จากนั้นบันทึกและออก (กด 'esc' แล้วพิมพ์ต่อไปนี้)
:wq
ด้วยยูทิลิตี้cron
นั่นคือสิ่งที่cronมีไว้สำหรับ
หากคุณต้องการมันนาน ๆ ครั้งไม่ถาวรเหมือนกับที่คุณได้รับcronและwatchวิธีแก้ปัญหานั้นไม่ยืดหยุ่นพอคุณสามารถใช้สคริปต์ bash แบบเก่าได้:
while true; do
# do stuff
sleep $[60 * 60]
done