समय कमांड के लिए एक प्रारूप निर्धारित करने का प्रयास करते समय कमांड नहीं मिली


13

मैं एक विशेष प्रारूप में आउटपुट के साथ कमांड चलाने में लगने वाले समय को प्राप्त करने की कोशिश कर रहा हूं:

time -f "%E" ls -l

यह मैन पेज में (और ऑनलाइन मैन पेज पर ) उदाहरण के समान है । हालाँकि जब मैं इस कमांड को चलाता हूँ तो मुझे यह मिलता है:

-f: command not found

ऐसा प्रतीत होता है जैसे समय कमांड एक तर्क के रूप में -f नहीं पढ़ रहा है, बल्कि मैं जिस कमांड को चलाने की कोशिश कर रहा हूं।

मैं एक विशिष्ट प्रारूप में कमांड के लिए निष्पादन का समय कैसे प्राप्त कर सकता हूं?

जवाबों:


17

इसका कारण यह है कि timeएक बैश बिलिन कमांड है - और बिलिन उन विकल्पों का समर्थन नहीं करता है जिन्हें आप उपयोग करने की कोशिश कर रहे हैं।

इसे आज़माएं, बिल्ट-इन को छोड़ने के लिए समय का पूर्ण पथ का उपयोग करें और वास्तविक का उपयोग करें:

/usr/bin/time -f "%E" ls -l

3

दुर्भाग्य से, timeएक bash कीवर्ड और प्रोग्राम दोनों है /usr/bin। यदि आप समय के लिए पूर्ण पथ निर्दिष्ट करते हैं, जैसा कि /usr/bin/time -f "%E" ls -lआप उस आउटपुट को प्राप्त करेंगे जो आप उम्मीद कर रहे थे।


कार्यक्रम 'समय' पैकेज द्वारा प्रदान किया गया है:apt-get install time
jonhattan
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.