2012-06-15 13 views
5

के साथ निरस्त ऑपरेशन मैं एक स्क्रिप्ट लिख रहा हूं और किसी बिंदु पर मैं "कमांड 1" पर कॉल करता हूं जो तब तक नहीं रुकता जब तक कि CTRL + C का आह्वान नहीं किया जाता है।लिनक्स कमांड - टाइमआउट

  1. वहाँ एक आदेश के लिए समय समाप्त राज्य के लिए कोई तरीका है? पसंद: कमांड 1 तर्क -टाउटआउट 10
  2. मैं टेक्स्ट फॉर्म में CTRL + C कमांड कैसे लिखूं?

Thx!

+0

टेक्स्ट फ़ॉर्म में Ctrl + C भेजकर आप वास्तव में क्या मतलब रखते हैं? – betabandido

उत्तर

6

आप GNU coreutils से timeout आदेश का उपयोग कर सकते हैं (यदि आप इसे पहले स्थापित करने के लिए आवश्यकता हो सकती है, लेकिन यह, यदि सभी नहीं, लिनक्स वितरण सबसे में आता है):

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

उदाहरण के लिए:

timeout 5 ./test.sh 

निष्पादन के 5 सेकंड के बाद स्क्रिप्ट को समाप्त कर देगा। यदि आप एक किल सिग्नल (टीईआरएम के बजाए) भेजना चाहते हैं, तो -k ध्वज का उपयोग करें।

Here आपके पास timeout कमांड का पूरा विवरण है।

0

मैं सिर्फ

jekyll -server & sleep 10;pkill jekyll 

की कोशिश की अपनी स्थिति के लिए कर सकता है।

+1

चेतावनी: आप इसके साथ "jekyll" नामक किसी भी और सभी प्रक्रियाओं को मार देंगे। जिसकी आप रुचि रखते हैं उसके पीआईडी ​​को बचाने के लिए बहुत बेहतर है (यह कमांड लॉन्च होने के बाद '$! 'में है) और केवल उस को मार डालो। – Celada

-1

आपकी स्क्रिप्ट में आप प्रतीक्षा कर सकते हैं। wait 10 10 सेकंड तक इंतजार करेगा और CTRL + C के बिना प्रोग्राम से बाहर निकलने के लिए exit कमांड देखें। यदि आप exit 0 का उपयोग करते हैं तो इसका मतलब है ठीक है। अलग-अलग संस्करण हैं, लेकिन मुझे नहीं पता कि वे मेरे सिर के ऊपर से क्या मतलब है।

exit 1 
exit 2..... so on and so forth 

अद्यतन


@ Celada

पार्टी की योजना बनाई कोई ज़रूरत नहीं। आप बस इतना कह सकते थे "शायद आप सही ढंग से सवाल नहीं समझ पाए" स्टैक ओवरफ्लो लोगों को सीखने में मदद करने के लिए यहां है, उन्हें फाड़ें नहीं। उन्होंने इसके लिए रेडडिट का आविष्कार किया। निकास कोड के लिए, आप कोड के साथ निकास() कमांड जारी करके प्रोग्राम को बाहर निकलने के लिए मजबूर कर सकते हैं। सीधे linux.die.net से।

Exit Code Number Meaning Example Comments 
1 Catchall for general errors let "var1 = 1/0" Miscellaneous errors, such as "divide by zero" 
2 Misuse of shell builtins (according to Bash documentation) Seldom seen, usually defaults to exit code 1 
126 Command invoked cannot execute Permission problem or command is not an executable 
127 "command not found" Possible problem with $PATH or a typo 
128 Invalid argument to exit exit 3.14159 exit takes only integer args in the range 0 - 255 (see footnote) 
128+n Fatal error signal "n" kill -9 $PPID of script $? returns 137 (128 + 9) 
130 Script terminated by Control-C Control-C is fatal error signal 2, (130 = 128 + 2, see above) 
255* Exit status out of range exit -1 exit takes only integer args in the range 0 - 255 
+0

यह कोई मतलब नहीं है। यह वही नहीं है जो 'प्रतीक्षा' आदेश करता है, और मुझे नहीं पता कि इसका उपयोग करने के लिए 'निकास' का अर्थ कैसा है। – Celada

संबंधित मुद्दे