ฉันรันสคริปต์สองตัว ทั้งสองเป็นรหัสเดียวกัน แต่พวกเขาต้องทำงาน 5 นาทีเพื่อป้องกันการชนกัน สคริปต์แรก: #! / bin / sh
# First run
line="Bonus check"
stamp=$(date +%Y%m%d-%H%M)
# sleep 90s
echo "$stamp\t $line" >> /home/rdanner3/Desktop/CardParty.log
{
export DISPLAY=:0.0
google-chrome [URL masked]
}
sleep 45s
# google-chrome
pkill -f chrome
# Second run to seventh run identical to above; stripped for brevity.
สคริปต์ที่สอง (โปรดสังเกตว่ามันเป็นรหัสเดียวกันโดยทั้งคู่จะต้องมีลูปเพื่อความมีสติ!)
#!/bin/sh
# 1st run
line="Bonus checked."
stamp=$(date +%Y%m%d-%H%M)
# sleep 90s
echo "$stamp\t $line" >> /home/rdanner3/Desktop/Slots.log
{
export DISPLAY=:0.0
google-chrome [URL masked]
}
sleep 45s
# google-chrome
pkill -f chrome
# 2nd run to 7th run identical to above code...stripped for brevity
จะเกิดอะไรขึ้นเมื่อสคริปต์มาถึงการรันครั้งที่สอง พวกเขาทำงานภายในไม่กี่วินาทีของกันและกันแม้งาน cron ที่เริ่มต้นพวกเขาห่างกัน 5 นาที เห็นได้ชัดว่าสวย (จากไฟล์บันทึกที่สคริปต์สองตัวเขียน) ว่าพวกเขากำลังแยกตัวออกจากกันไม่กี่วินาทีไม่ใช่ในลำดับที่ถูกต้อง การเปลี่ยนสคริปต์ตัวที่สองเป็น (พูด) แอชหรือทุบตีทำอะไรที่ดีเพื่อหลีกเลี่ยงคำสั่ง sleep ของสคริปต์ทั้งสองไม่ให้เกิดความสับสนซึ่งกันและกัน หรือฉันกำลังทำผิดพลาดอื่น ๆ (เช่นจำเป็นต้องยกเลิกการคอมเม้นต์ google-chrome ครั้งที่สองเพื่อให้ pkill ล้างอากาศออก)
สังเกตเห็นปัญหาเมื่อวานนี้ฉันตัดสินใจว่าต้องการความช่วยเหลือเล็กน้อย ดังนั้นฉันมาที่นี่เพื่อมัน