2012-10-04 10 views
7

कंसोल कमांड reset(1) है, मुझे बहुत धीमा लगता है। मेरी मशीन पर, निष्पादित करने में 1 सेकंड दीवार का समय लगता है।लिनक्स कमांड रीसेट (1) धीमा है

यह क्यों है? क्या इसे तेजी से बनाया जा सकता है? वैकल्पिक रूप से, क्या कोई और कमांड है जो मेरे टर्मिनल बफर को मिट सकता है?

+0

आप हालांकि यह मेरे लिए एक वास्तविक उपयोग समस्या है विषय बंद के रूप में मेरे सवाल का बंद कर दिया। और यहां तक ​​कि अगर पूछना क्यों धीमा है धीमा हो सकता है, यह पूछना कि मैं अपने टर्मिनल बफर को कैसे मिटा सकता हूं निश्चित रूप से नहीं है। – nccc

उत्तर

5

मैं strace reset भाग गया, और अंत के पास देखा: तो यह जानबूझ कर सभी टर्मिनल रीसेट कोड भेजने के बाद एक दूसरे इंतज़ार कर रहा है, शायद इसलिए कि कुछ टर्मिनलों सब कुछ कार्रवाई करने के लिए समय की जरूरत है

nanosleep({1, 0}, 0x7fffe32053e0)  = 0 

आपको reset का उपयोग अक्सर करने की आवश्यकता नहीं है (केवल जब पूर्ण स्क्रीन प्रोग्राम असामान्य रूप से समाप्त हो जाता है, तो यह टर्मिनल को रीसेट नहीं करता है), यह एक बड़ा सौदा क्यों है?

मुझे यकीन नहीं है कि "मेरा टर्मिनल बफर मिटाएं" से आपका क्या मतलब है। यह नहीं है कि reset क्या है।

+2

शायद यह नहीं है कि 'रीसेट' क्या है, लेकिन मुझे नहीं पता कि अन्य कमांड का क्या असर हो सकता है। धन्यवाद हालांकि, इस तरह की व्याख्या बताती है कि यह धीमा क्यों है। – nccc

+1

यह एक बड़ा सौदा है क्योंकि मैं कुछ विंडो टर्मिनल एमुलेटर में प्रोग्रामिंग करते समय अक्सर 'रीसेट' का उपयोग करता हूं, उदा। GNOME टर्मिनल। मुझे अक्सर अपनी स्क्रीन को साफ़ करने की ज़रूरत होती है, लेकिन टर्मिनल बफर को हर तरह से मिटा देती है। – nccc

+0

यह बताता है कि कुछ दुर्लभ मामलों में कुछ वितरणों पर यह टर्मिनल में कचरा छोड़ देता है। यह स्क्रीन को साफ़ करता है, फिर कुछ टर्मिनल कोड दिखाई देते हैं, और फिर मुझे संकेत मिलता है। –

5

स्पष्ट, rmacs, rmm, rmul, rs1, rs2, और rs3 तर्कों के साथ टिप (1) को रीसेट करता है। यह ट्यूट को टर्मिनल को/etc/termcap (जीएनयू या बीएसडी ट्यूट के लिए) या टर्मिनो डेटाबेस (ncurses tput के लिए) के आधार पर टर्मिनल पर उचित रीसेट स्ट्रिंग भेजने का कारण बनता है। यह अनुक्रम लिनक्स वीसी को रीसेट करने के लिए पर्याप्त प्रतीत होता है जब वे "अजीब दिखने वाले" पात्रों को प्रिंट करना शुरू करते हैं। अच्छे उपाय के लिए, पकाया मोड वापस पाने के प्रयास में stty (1) को सॉन तर्क के साथ बुलाया जाता है।

भी देखें स्पष्ट (1), stty (1), tput (1)

+3

ऐसा लगता है कि 'टिपट रीसेट' मेरे लिए नौकरी नहीं करता है, बिना देरी के। –

+0

ट्यूट (1) से: '' यदि रीसेट नामक लिंक द्वारा ट्यूट को बुलाया जाता है, तो इसका ट्यूट रीसेट के समान प्रभाव होता है। '', मेरे होम बिन में 'tput'' से '' reset'' में सिमलिंक बनाना फ़ोल्डर चाल है। धन्यवाद। –

0

आप बस अपने टर्मिनल बफर साफ़ करना चाहते हैं, तो आप clear(1) आदेश पर दिखाई दे सकता है।

clear(1) मैनुअल पृष्ठ से एक अंश:

NAME 
    clear - clear the terminal screen 

SYNOPSIS 
    clear 

DESCRIPTION 
    clear clears your screen if this is possible. It looks in 
    the environment for the terminal type and then in the 
    terminfo database to figure out how to clear the screen. 
    ... 
+1

स्पष्ट (1) टर्मिनल में वर्णों के दृश्य आयत को साफ़ करता है, न कि संपूर्ण टर्मिनल बफर। तो स्पष्ट (1) हमेशा पर्याप्त नहीं है – porton

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