अंतिम आदेश का स्पष्ट टर्मिनल आउटपुट


10

पिछले कमांड इतिहास को देखने के लिए आउटपुट की सैकड़ों लाइनों को स्क्रॉल करने के बजाय, अंतिम कमांड का आउटपुट क्लियर किया जा सकता है? जैसे निष्पादित करने के बाद ls, इसके उत्पादन को साफ करें क्योंकि आपको इसकी कोई आवश्यकता नहीं है।

संपादित करें:

यह आपका सामान्य नहीं है clear या ctrl+L ऑपरेशन। यह विचार है कि इतिहास को पिछले कमांड के आउटपुट की तलाश में वापस स्क्रॉल किया जाए, लेकिन बिना किसी लोड के पिछले स्क्रॉल करने के लिए ls, या cat, या sudo apt-get install उत्पादन जब तक मैं वास्तव में करना चाहता हूँ। यह कुछ इस तरह दिख सकता है:

cat fileIWantToRemember
ls directoryIWantToForget
# some command that wipes the output of ls
# scroll back to see the output of cat immediately

क्या आपको आउटपुट साफ़ करने, या अपने कमांड इतिहास से कमांड हटाने का मतलब है? यदि आप अपने कमांड इतिहास को संशोधित करना चाहते हैं, हो सकता है यह धागा क्या आप के लिए देख रहे हैं पते?
ernie

टर्मिनल केवल पाठ की एक धारा प्रदर्शित करता है, और कुछ को अपने आंतरिक बफर में संग्रहीत करता है। यह कमांड आउटपुट के बीच जानने, या भेदभाव करने का कोई तरीका नहीं है। Rxvt-unicode टर्मिनल में एक पर्ल इंटरप्रिटर है जो इस तरह से कुछ लागू करने में सक्षम हो सकता है। लेकिन जहां तक ​​मुझे पता है कि यह नहीं किया गया है।
Keith

बहुत समय पहले, मैंने मैक ओएस एक्स पर एक टर्मिनल एमुलेटर का उपयोग किया था जिसमें यह सुविधा थी, लेकिन मुझे याद नहीं है कि इसे क्या कहा जाता था। हालांकि यह मुफ़्त नहीं था। हालाँकि, इसके लिए एक त्वरित Google खोज करते समय, मैं भाग गया finalterm.org , जो दिखता है कि यह उस सुविधा को लागू करने की कोशिश कर रहा है। हालांकि, "फाइनल टर्म भारी विकास में है और न तो स्थिर है और न ही पूर्ण सुविधा है!", इसलिए मैंने इसे करने की कोशिश नहीं की। हालांकि दिलचस्प लगता है। Google खोज, इसके लिए जो मूल्य है, वह था terminal emulator output folding
rici

फ़ाइनल टर्म भारी-भरकम है जिसे कमांड (और बहुत सारे कमाल के सामान) को फोल्ड करने के लिए विकसित किया गया है, और एक बार ऐसा करने के लिए एक कीबोर्ड शॉर्टकट होता है, फिर समस्या हल हो जाती है। मुझे लगता है कि मैं पागल हो रहा था ...
nacnudus

@nacnudus: यदि आप इसे आज़माते हैं और यह आपके लिए काम करता है, तो आपको प्रश्न का स्व-उत्तर देना चाहिए। जो समान समस्या वाले अन्य लोगों के लिए मार्गदर्शन प्रदान करेगा।
rici

जवाबों:


4

@Rici के लिए धन्यवाद के साथ, इस व्यवहार को "तह" कहा जा सकता है। आदेशों का आउटपुट भुलाया नहीं जाता है, लेकिन आप इसे तब तक छिपा सकते हैं जब तक आपको फिर से इसकी आवश्यकता न हो। पाठ संपादकों में तह आम है लेकिन टर्मिनल एमुलेटरों में दुर्लभ प्रतीत होता है।

अंतिम कार्यकाल एक नया टर्मिनल एमुलेटर है जिसमें कई अन्य फैंसी ट्रिक्स के बीच तह शामिल है। खबरदार: "अंतिम कार्यकाल भारी विकास में है और न तो स्थिर है और न ही पूर्ण सुविधा है!" जब मैंने इसका परीक्षण किया तो यह मेरी आज्ञाओं को मोड़ने के लिए काफी विकसित था, लेकिन क्रैश नहीं करने के लिए बहुत अस्थिर था। एक देखने के लिए।


0

मुझे लगता है कि आप स्पष्ट आदेश की तलाश कर रहे हैं ...

clear

"स्पष्ट" आपके अंतिम आदेश को दृश्य से साफ़ करता है। यदि आवश्यक हो तो आप इसे फिर से देखने के लिए टर्मिनल में स्क्रॉल कर सकते हैं।


इसका मतलब यह है कि किसी अन्य चीज़ के लिए अपने इतिहास को देखने के दौरान इसे अतीत में नहीं डालना चाहिए।
nacnudus

क्या आपका मतलब है कि आप कमांड से आउटपुट को दबाना चाहते हैं? यदि हाँ, तो इससे आपको मदद मिल सकती है: stackoverflow.com/questions/617182/...
phe0113

यह बहुत अच्छा है अगर मैं कभी आउटपुट नहीं देखना चाहता। मैं पहली बार आउटपुट देखना चाहता हूं, और फिर इसके बारे में भूल जाता हूं। इसलिए मैंने जो उदाहरण दिया है, मैं उसके आउटपुट का निरीक्षण करना चाहता हूं ls किसी कारण के लिए, लेकिन फिर मैं इससे छुटकारा पाना चाहता हूं ताकि मुझे बिल्ली के उत्पादन को खोजने के लिए इसे अतीत में स्क्रॉल न करना पड़े। जाहिर है कि मैं बस फिर से बिल्ली कर सकता था, लेकिन मैं कल्पना कर सकता हूं कि आदेशों के अनुक्रम को बनाए रखना चाहता हूं, और यह अच्छा होगा कि उन सभी को दोहराना न पड़े।
nacnudus

0

बैश में, आप शॉर्टकट दबा सकते हैं Ctrl + L स्क्रीन को साफ करने के लिए, के समान clear आदेश। ( http://ss64.com/bash/syntax-keyboard.html )

या, आप उपयोग कर सकते हैं history | tail -3 पिछले तीन आदेशों को देखने के लिए। ( http://www.howtogeek.com/howto/44997/how-to-use-bash-history-to-improve-your-command-line-productivity/ )


नीचे मेरी टिप्पणी देखें @ जस्टिन को, इतिहास को किसी और चीज़ के लिए देखते समय इसे अतीत में स्क्रॉल करने की आवश्यकता नहीं है। कुछ इस तरह HISTCONTROL=ignorespace अपने दूसरे लिंक में, जिसका उपयोग आप इस तथ्य के बाद कर सकते हैं कि यह अच्छा होगा।
nacnudus

आप जो हासिल करना चाहते हैं उस पर मैं थोड़ा सा खो गया हूं। एक और विचार, मैंने जो कई कंसोल का उपयोग किया है, आप आमतौर पर तीर कुंजियों का उपयोग कर सकते हैं ताकि कमांड इतिहास को बाश में ब्राउज़ कर सकें, क्या यह आपकी स्थिति पर लागू होता है?
phe0113

क्या मेरा संपादन प्रश्न को स्पष्ट करता है?
nacnudus

@nacnudus, हाँ, मुझे आपकी बात अब मिल गई है :)
phe0113

0

ऐसा लगता है जैसे आप अपने इतिहास से आइटम निकालना चाहते हैं। ऐसा करने के लिए, आपको सबसे पहले अपने ~ / .bashrc और जोड़कर लॉगआउट करने के बजाय, मक्खी पर इतिहास के लेखन को सक्षम करने की आवश्यकता होगी:

shopt -s histappend; export PROMPT_COMMAND='history -a';'

फिर, उन वस्तुओं को हटाने के लिए जो आप कर सकते हैं:

history -d offset, जहां ऑफसेट इतिहास प्रविष्टि है जिसे आप हटाना चाहते हैं

इस पर आधारित मंच का धागा


ऐसा लगता है कि इसे इतिहास फ़ाइल से हटा दिया गया है, जो लगभग सही विचार है, लेकिन क्या इसे मौजूदा टर्मिनल से मिटा सकते हैं?
nacnudus
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.