सवाल टर्मिनल को वास्तव में कैसे साफ़ करें?


मैं जारी कर सकता हूँ clear आदेश या प्रेस Ctrl + एल वर्तमान उबंटू टर्मिनल को साफ़ करने के लिए, लेकिन यह पिछले आउटपुट को ऊपर की ओर ले जाता है और यदि आप माउस स्क्रॉल का उपयोग करते हैं या PgUp तथा PgDown कुंजियों को अलग करना मुश्किल है जहां पिछले कमांड का आउटपुट समाप्त होता है और वर्तमान कमांड का आउटपुट शुरू होता है।

क्या कोई रास्ता है वास्तव में टर्मिनल को साफ़ करें तो मुझे पिछले कमांड परिणाम नहीं दिखाई देंगे?


322
2018-02-06 21:51


मूल


Ctrl + L दबाएं दो बार और आप खाली हो जाओ! - Pandya


जवाब:


हां, जिस कमांड को आप ढूंढ रहे हैं वह है

reset

के विपरीत clear, या Ctrl+एल, reset वास्तव में पूरी तरह से फिर से शुरू होगा टर्मिनल, बस स्क्रीन को साफ़ करने की बजाय। हालांकि, यह खोल (बैश) को फिर से चालू नहीं करेगा। इसका मतलब है कि बैश है राज्य पहले की तरह ही है, जैसे कि आप केवल स्क्रीन को साफ़ कर रहे थे।

जैसा कि @ वालकोलो ने टिप्पणियों में उल्लेख किया है, इस आदेश को एक ही चीज़ को और अधिक तेज़ी से करना चाहिए:

tput reset

अन्य उत्तरों से:

  • आप एक सेट कर सकते हैं कुंजीपटल संक्षिप्त रीति सेवा मेरे reset टर्मिनल, के रूप में द्वारा समझाया गया towolf

  • यदि आप दौड़ रहे हैं Kubuntu, और आपका टर्मिनल कंसोल है, आपको जाने की जरूरत है संपादित करें → इतिहास साफ़ करें, जबसे reset वैसे ही काम नहीं करता है, UncleZeiv नोट्स के रूप में


392
2018-02-06 21:55



शायद अधिकांश उपयोगकर्ताओं के लिए कोई फर्क नहीं पड़ता, लेकिन व्यवहार reset टर्मिनल पर निर्भर है। - cthom06
व्यक्तिगत रूप से मुझे कोई फर्क नहीं पड़ता कि जब मैं हिट करता हूं तो स्क्रोलर के साथ कुछ "ऊपर" छोड़ा जाता है ^L। मुझे यह नहीं दिख रहा है (यही वह है जो मैं चाहता हूं!), मुझे यह महसूस नहीं होता है, और अगर अचानक मैं चाहता हूं जरुरत वहां क्या बहाल करने के लिए - कोई समस्या नहीं है। reset इसके विपरीत बहुत कठिन उपकरण है - टर्मिनल के साथ कुछ गलत होने पर मैं इसका उपयोग करूंगा - जैसे, जब अजीब बचने के दृश्यों ने गलती से प्रदर्शन को पूरी तरह से बर्बाद कर दिया। - ulidtko
@ulidtko: इससे कोई फर्क पड़ता है जब आप आउटपुट के साथ कार्यक्रमों के लगातार सत्र चलाते हैं। यदि आप वापस स्क्रॉल करते हैं तो भ्रमित होना आसान है कि किस निष्पादन ने कुछ मुद्रित किया है। मैं पूरी तरह से जानता हूं कि इन मामलों में अधिक परिष्कृत समाधानों का उपयोग किया जा सकता है, लेकिन फिर भी यह एक परिदृश्य है जो अक्सर त्वरित और गंदे डिबगिंग सत्रों में आता है। - UncleZeiv
@UncleZeiv रंगीन प्रॉम्प्ट एंकर आमतौर पर मुझे आवश्यक स्थान को तुरंत ढूंढने में मदद करते हैं। हालांकि यह सब सिर्फ आदत है। - ulidtko
वहाँ भी tput reset जो स्पष्ट रूप से एक ही चीज करता है, लेकिन तत्काल पूरा करता है (जबकि reset प्रॉम्प्ट फिर से दिखाई देने से लगभग 2 सेकंड तक लग सकते हैं)। - Ponkadoodle


मैं थोड़ी देर के लिए इसकी तलाश कर रहा था और मुझे कुछ प्रतिभा मिली जो इसे पोस्ट करते थे:

clear && printf '\e[3J'

पूरे स्क्रीन बफर को साफ़ करता है, बहुत साफ है। ओएस एक्स पर काम करता है और मानता है कि यह अधिकांश * निक्स टर्मिनल पर ठीक काम करता है।

जिज्ञासा के लिए, इस भाग '\e[3J' टर्मिनल एस्केप कमांड है।


76
2018-05-29 05:51



हम्म, xterm, कंसोल और लिनक्स वीटी में काम करता है, लेकिन gnome टर्मिनल में नहीं है ... - Ruslan
धन्यवाद, यह बहुत उपयोगी है! क्या करता है printf '\e[3J' क्या मतलब है? यह बफर को कैसे साफ करता है? - Filip Spiridonov
महान खोज! और उन लोगों के लिए जो मैक पर बैश-स्टाइल रीसेट चाहते हैं: nano ~/.bashrc और जोड़ alias reset="clear && printf '\e[3J'" - Michael Deal
अलियासिंग सावधान रहें reset - यह टर्मिनल को साफ़ करने से भी ज्यादा है। उदाहरण के लिए, यदि आप गलती से यादृच्छिक कचरे के साथ एक बाइनरी फ़ाइल मुद्रित करते हैं जो टर्मिनल को दूषित करता है (उदा। टाइप किए गए वर्णों को प्रतिबिंबित करता है) reset आमतौर पर इसे ठीक कर सकते हैं। निश्चित रूप से अलियासिंग ठीक है जब तक आप जानते हैं कि कैसे करें \override एक उपनाम छायादार कमांड। - RubyTuesdayDONO
यह एकमात्र उत्तर है जो विंडर्स के माध्यम से कुछ एसएसएच तक पहुंचने पर पुट्टी स्क्रॉलबैक को साफ़ करने के लिए काम करता है। - dhaupin


आप जाकर gnome-terminal में शॉर्टकट भी असाइन कर सकते हैं संपादित करें → कीबोर्ड शॉर्टकट्स। मैं उपयोग करता हूंखिसक जाना+Ctrl+ऑल्ट+सी

reset and clear shortcut


37
2018-02-08 22:46



+1। मेरे पास हमेशा मेनूबार छिपा हुआ है; तो gnome का उपयोग करने के वर्षों और वर्षों के बाद भी, मैंने कभी यह देखने के लिए सोचा नहीं। धन्यवाद :-) - Stefano Palazzo♦
"रीसेट करें" मेरे लिए कुछ भी नहीं करें, और "रीसेट और साफ़ करें" सब कुछ साफ़ करें लेकिन प्रॉम्प्ट को फिर से प्रदर्शित नहीं करता है। इन मेनू प्रविष्टियों में से कोई भी टर्मिनल से "रीसेट" कमांड की तरह व्यवहार नहीं करता है। - Hibou57
जैसा कि @ हिबौ57 ने कहा, "रीसेट" के लिए मेरा कीबोर्ड शॉर्टकट कुछ भी प्रतीत नहीं होता है। क्या यह कार्यक्षमता 14.04 में टूट गई है? - Michael Martin-Smucker
"क्या यह कार्यक्षमता 14.04 में टूट गई है?": यह 12.04 के साथ समान है। - Hibou57
@ Hibou57 "रीसेट और साफ़ करें" को प्रॉम्प्ट को फिर से प्रदर्शित करने की उम्मीद नहीं है, लेकिन यदि आप बाद में एंटर दबाते हैं तो उसे प्रॉम्प्ट फिर से प्रदर्शित करना चाहिए। क्या ये तुम्हारे लिए कारगर है? - Don Hatch


इस आदेश को चलाएं:

reset

यह एक नया टर्मिनल लॉन्च करने के समान प्रभाव डालता है।


15
2018-02-06 21:55



चलने के बाद, पट्टी का उपयोग करते समय reset, मैं अभी भी स्क्रॉल कर सकता हूं और पिछली सामग्री देख सकता हूं। क्या यह पुटी के साथ एक मुद्दा है reset? - Svish
@ स्विस - यह सिर्फ एक पट्टी कार्यान्वयन मुद्दा या निर्णय है। - belacqua
@jgbelacqua, डील :) - Svish


मेरे जवाब को पोस्ट करना क्रॉस करें स्टैक ओवरफ़्लो

केवल नई लाइनों को जोड़ने के बजाय एक स्पष्ट स्क्रीन करने के लिए निम्न आदेश का उपयोग करें ...

printf "\033c"

हाँ यह बैश प्रॉम्प्ट पर 'printf' है।

हालांकि आप शायद उपनाम को परिभाषित करना चाहते हैं ...

alias cls='printf "\033c"'

व्याख्या

\033 == \x1B == 27 == ESC

तो यह हो जाता है <ESC>c जो टर्मिनल को रीसेट करने के लिए वीटी 100 एस्केप कोड है। यहाँ टर्मिनल एस्केप कोड पर कुछ और जानकारी है।

संपादित करें

इसे करने के कुछ अन्य तरीके यहां दिए गए हैं ...

printf "\ec" #\e is ESC in bash
echo -en "\ec" #thanks @Jonathon Reinhart.
# -e    Enable interpretation of of backslash escapes
# -n    Do not output a new line

केडीई

उपरोक्त केडीई कंसोल (कंसोल कहा जाता है) पर काम नहीं करता है लेकिन उम्मीद है! स्क्रीन और स्क्रॉल-बैक बफर को साफ़ करने के लिए कमांड के निम्न अनुक्रम का उपयोग करें ...

clear && echo -en "\e[3J"

या शायद केडीई पर निम्नलिखित उपनाम का उपयोग करें ...

alias cls='clear && echo -en "\e[3J"'

मुझे स्क्रॉल-बैक क्लियरिंग कमांड मिला है यहाँ


8
2017-10-13 08:08





वैसे यह वास्तव में निर्भर करता है, अगर आप इसका उपयोग कर रहे हैं Konsole उदाहरण के लिए भी reset आपको पहली पंक्ति के पीछे स्क्रॉल करने से नहीं रोकता है। उस स्थिति में आपको उस विशेष टर्मिनल की कुछ सुविधा का उपयोग करना होगा जिसका आप उपयोग कर रहे हैं। के लिये Konsole, आईटी इस Edit > Clear History


5
2018-02-07 16:27





मेरी पसंदीदा है printf "\ec"। यह भी हो सकता है printf "\033c" या printf "\x1bc"। यह एक ansi escape अनुक्रम है जो टर्मिनल आउटपुट के लिए स्क्रीन और बफर को चमत्कारिक रूप से साफ़ करता है (अधिकांश मानक टर्मिनलों में मैंने ऐसा काम किया है - मुझे पता है कि यह उबंटू-जैसे पर gnome-terminal, टर्मिनेटर, xterm इत्यादि जैसे काम करता है। Linuxes)

मुझे पता है कि यह लिनक्स मिंट और उबंटू 14.04 में काम करता है, इसलिए मुझे नहीं पता कि लोग क्यों काम कर रहे हैं और चीजों को प्रीपेड कर रहे हैं clear && echo -ne "\033cprintf "\ec" हमेशा मेरे लिए काम किया है।

इसके अतिरिक्त, मेरे में .bashrc मेरे पास इस तरह बाध्यकारी है:

bind -x '"\C-t": printf "\ec"';

अब मैं दबाता हूं ctrlटी पुरे समय।


5
2018-05-01 09:32



क्या आप जानते हैं कि विंडोज कुंजी का उपयोग करके मैपिंग कैसे बनाई जा सकती है? यह स्निपेट वाकई बहुत अच्छा है, मैक पर कमांड-के जैसे बिल्कुल काम करता है। धन्यवाद। - Niloct
@Niloct आप देख सकते हैं कि टर्मिनल इसका समर्थन करता है या नहीं xev (बस टाइप करो xev एक्स-सत्र के अंदर एक टर्मिनल में)। मैं जो कह सकता हूं उससे, urxvt इसका समर्थन नहीं करता है; जबकि मैंने एक tty में कोशिश नहीं की, मुझे विश्वास है कि यह समर्थित नहीं होगा। मुझे यह भी संदेह है कि xterm या gnome-terminal इसका समर्थन करेगा। Ansi-escapes के साथ यह मुश्किल है। देर से जवाब के लिए चीयर्स और खेद है। - dylnmc
ठीक है @ dylnmc, मैं इसकी सराहना करता हूं। टिप्पणी के लिए धन्यवाद। - Niloct


मुझे कुबंटू के साथ काफी सफल होने के लिए निम्नलिखित मिला है:

alias clc="echo -en '\033c\033[3J'"

आप उपयोग कर सकते हैं cls विंडोज परंपरा के साथ रखने के लिए, मैटलैब संस्करण का उपयोग करें clc, या अपने आप में से एक। सौभाग्य!


3
2018-04-29 22:26