เรียกใช้คำสั่งสำหรับเวลาที่ระบุและยกเลิกหากเวลาเกิน


47

ฉันต้องการทราบว่าฉันสามารถเรียกใช้คำสั่งตามเวลาที่ระบุหนึ่งนาทีได้อย่างไรและหากการดำเนินการไม่เสร็จสมบูรณ์ฉันควรหยุดมันได้

คำตอบ:


62

การใช้timeout:

NAME
       timeout - run a command with a time limit

SYNOPSIS
       timeout [OPTION] DURATION COMMAND [ARG]...
       timeout [OPTION]

(ในกรณีที่ถ้าคุณไม่มีคำสั่งนี้หรือถ้าคุณจำเป็นต้องเข้ากันได้กับกระสุนที่เก่ามากและมีข้อกำหนดที่เฉพาะเจาะจงอื่น ๆ อีกมากมาย…ดูที่คำถามนี้ ;-))


1
สมบูรณ์แบบขอบคุณที่เชื่อมโยงกับคำถามนั้น ฉันไม่ได้หมดเวลาในระบบของฉัน แต่ตอนนี้ฉันทำ เพียงสังเกตด้านข้างหมดเวลาที่จะมาพร้อมกับการกระจายลินุกซ์ส่วนใหญ่?
nikhil

1
สวยเท่ห์ คุณสามารถทำสิ่งนี้: for i in `seq 0 3`; do timeout 2 ethtool -p eth$i; done;การกะพริบไฟ LED บน NIC's
user1527227

1
ช่างเป็นคำสั่งที่เซ็กซี่ ขอบคุณสำหรับการชี้ให้เห็นมันไม่ได้ตระหนักถึงมัน
Bruno Bieri
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.