ฉันต้องการดาวน์โหลดไฟล์ข้อมูลจากเซิร์ฟเวอร์ ftp ระยะไกลไปยังเครื่องของฉันในช่วงเวลาปกติ เมื่อดาวน์โหลดไฟล์แล้วฉันต้องการเรียกใช้สคริปต์อื่นซึ่งจะประมวลผลไฟล์
เครื่องพัฒนาของฉันคือ mac os x สภาพแวดล้อมการปรับใช้ในที่สุดคือ linux
ในรายละเอียด:
มีเซิร์ฟเวอร์ ftp สาธารณะระยะไกลที่ดำเนินการโดยสำนักงานพยากรณ์อากาศซึ่งสำนักพยากรณ์อากาศโพสต์ไฟล์ที่มีการพยากรณ์อากาศ นี่ไม่ใช่เครื่องของฉันฉันสามารถดาวน์โหลดได้เท่านั้น สำนักพยากรณ์อากาศจะวางไฟล์ใหม่ที่นี่ทุก ๆ หกชั่วโมงเวลาเป็นส่วนหนึ่งของชื่อไฟล์ ฉันจะมีเครื่องมือในเครื่องของฉันที่สามารถประมวลผลข้อมูลในไฟล์เหล่านี้ ฉันไม่ได้ขอความช่วยเหลือในการพัฒนาเครื่องมือนี้ ฉันขอความช่วยเหลือติดกาวชิ้นเข้าด้วยกันจัดตารางเวลาการดาวน์โหลดและการเรียกใช้เครื่องมือ
สิ่งที่ฉันต้องการจะทำ:
ทุก ๆ หกชั่วโมงฉันต้องการดาวน์โหลดไฟล์ใหม่จากเซิร์ฟเวอร์ weather bureau ftp หากสิ่งนี้ล้มเหลวฉันต้องการ: ส่งอีเมลและกำหนดเวลาการดาวน์โหลดใหม่
หากการดาวน์โหลดยังคงล้มเหลวหลังจากหกชั่วโมงฉันต้องการหยุดพยายามรับไฟล์นี้เนื่องจากตอนนี้ควรมีไฟล์ใหม่ที่มีชื่อใหม่
เมื่อดาวน์โหลดไฟล์สำเร็จแล้วฉันต้องการเรียกเครื่องมือของฉันเพื่อประมวลผลไฟล์ หากเครื่องมือล้มเหลวเนื่องจากไฟล์เสียหายมันจะส่งคืนข้อผิดพลาดและฉันต้องการกำหนดเวลาไฟล์ใหม่เพื่อดาวน์โหลด
มาตรฐานหุ้นจะทำสิ่งนี้โดยอัตโนมัติอย่างไร
ฉันรู้ว่าฉันสามารถใช้ cron เพื่อกำหนดการ curl เพื่อดาวน์โหลดและเรียกใช้สคริปต์ที่จะประมวลผลไฟล์ที่ดาวน์โหลดในช่วงเวลาปกติและฉันรู้ว่าสามารถเขียนสคริปต์ที่ซับซ้อนขึ้นเล็กน้อยหรือแอปพลิเคชันที่จะทำเช่นนี้และเพิ่มการจัดการข้อผิดพลาด ส่งอีเมลสถานะ
แต่หนึ่งในความต้องการของฉันสำหรับโครงการนี้คือการเขียนโค้ดที่กำหนดเองน้อยที่สุดเท่าที่จะทำได้แทนฉันควรจะลองใช้เครื่องมือมาตรฐานที่ได้ลองและเป็นเครื่องมือจริงที่มีอยู่และถ้าฉันต้องเขียนโค้ดเพื่อลองเขียนโค้ดที่ตรงไปตรงที่สุด . เหตุผลนี้เป็นรหัสที่อาจจะติดตั้งในเครื่องจำนวนมากซึ่งทั้งหมดจะต้องได้รับการปรับแต่งและดูแลโดยผู้คนที่แตกต่างกันนานหลังจากฉันหายไปจากโครงการดังนั้นความตั้งใจคือการใช้งานได้ดี จัดทำเอกสารเครื่องมือที่ได้รับการสนับสนุนเป็นอย่างดี
ดูเหมือนว่างานทั่วไปนั้นจะต้องมีเครื่องมือและสคริปต์ทั่วอินเทอร์เน็ตซึ่งเขียนขึ้นโดยผู้ที่พิจารณาทุกอย่างที่อาจผิดพลาดเมื่อคุณต้องการดาวน์โหลดและประมวลผลไฟล์จากเซิร์ฟเวอร์ระยะไกลเป็นระยะโดยไม่มีข้อผิดพลาด การจัดการการจัดกำหนดการใหม่และการส่งข้อความสถานะ
นั่นคือสิ่งที่ 'คาดหวัง' มีไว้เพื่ออะไร?
คุณจะแนะนำอะไร