लिनक्स टर्मिनल पर बैश कमांड इतिहास के माध्यम से चुनिंदा तरीके से नेविगेट करने के लिए [डुप्लिकेट]


9

इस सवाल का पहले से ही यहाँ एक जवाब है:

हर कोई जानता है (या पता होना चाहिए!) कि एक टर्मिनल पर ऊपर और नीचे तीर कुंजियों का उपयोग प्रयुक्त कमांड के इतिहास के माध्यम से नेविगेट करने के लिए किया जाता है।

जब आप दैनिक आधार पर टर्मिनल का उपयोग करते हैं, तो आपका कमांड इतिहास संभवतः कई अलग-अलग कमांडों की एक लंबी सूची होगी, जिससे नेविगेशन कम आसान होगा। एक उदाहरण के रूप में, मान लें कि एक महीने पहले मैंने प्रयोग किया था iwconfig मापदंडों के एक निर्धारित सेट के साथ (जैसे मैंने कहा, यह सिर्फ एक उदाहरण है, मुझे अभी इसके साथ गड़बड़ करने की आवश्यकता नहीं है), मैं अपने सभी तर्कों और मापदंडों के साथ उस विशेष आदेश को कैसे याद कर सकता हूं, जिसमें सैकड़ों सैकड़ों के माध्यम से वापस नेविगेट करने के बिना इतिहास के आदेश?

मुझे पता है कि मैं इस्तेमाल कर सकता था history पहले इस्तेमाल की गई कमांड की सूची और !n फिर से निष्पादित करने के लिए n उक्त सूची पर कमांड करें, लेकिन जब इतिहास बड़ा होता है, तो यह बहुत व्यावहारिक भी नहीं होता है।

आदर्श बात यह होगी कि मुझे इतिहास के माध्यम से नेविगेट करने के लिए कुछ हॉटकी का उपयोग करने की अनुमति होगी, लेकिन केवल उन उदाहरणों के बीच, जिनमें मैं पहले से ही कमांड लाइन पर टाइप कर चुका हूं; इसलिए मेरे उदाहरण में, टाइप करने के बाद iwconfig, कुछ कुंजियों का उपयोग करें (शायद PgUp और PgDown?) केवल उन प्रविष्टियों के माध्यम से नेविगेट करने के लिए जो शुरू होती हैं iwconfig

यदि यह संभव नहीं है, तो सूची को प्रिंट करना भी अच्छा होगा history करो, लेकिन इसमें वही होगा जो मैंने पहले ही टाइप किया है (मुझे संदेह है कि history तथा grep कमांड शामिल हैं लेकिन मैं सही वाक्यविन्यास के बारे में निश्चित नहीं हूं); लेकिन पिछले हॉटकी समाधान सबसे अच्छा विकल्प होगा।

जवाबों:


12

आप इतिहास का उपयोग करके खोज कर सकते हैं Ctrl + आर और फिर खोज स्ट्रिंग टाइप करें (उदा। iw ढूँढ़ने के लिए iwconfig )। फिर आप फिर भी ऊपर और नीचे तीर कुंजियों, या प्रेस के साथ उस बिंदु पर इतिहास के माध्यम से नेविगेट कर सकते हैं Ctrl + आर पिछली घटना को खोजने के लिए फिर से।


मुझे यकीन नहीं है कि यह अच्छी तरह से गर्म समझ गया है। अगर मैं Ctrl + R दबाता हूं और टाइप करता हूं iwconfig, यह मुझे एक उदाहरण दिखाता है जिसमें यह शामिल है (जरूरी नहीं कि सबसे हाल ही में), लेकिन अगर मैं तीर कुंजियों का उपयोग करता हूं, तो यह सभी आइटमों के माध्यम से नेविगेट करता है, न कि केवल उन स्ट्रिंग के साथ। मुझे ऐसा लगता है कि यह इतिहास में एक विशिष्ट बिंदु का चयन करता है, जिसमें नेविगेशन शुरू करने के लिए (नीचे की तरह शुरुआत से ऊपर की तरह करते हैं), लेकिन इसके अलावा, नेविगेशन हमेशा की तरह ही होता है। क्या मैं कुछ भुल गया?
Sekhemty

मुझे लगता है कि यह बिल्कुल भी मायने नहीं रखता है, लेकिन सिर्फ मामले में, मैं इसका उपयोग कर रहा हूं konsole टर्मिनल एमुलेटर।
Sekhemty

क्षमा करें, मैंने पिछले मैचों को खोजने के बारे में अपना जवाब अपडेट कर दिया है।
Stefan Seidel

5

थोड़ा अभ्यास करने के बाद, मैंने पाया कि वर्कअराउंड समाधान का उपयोग कैसे करें।

मैंने फ़िल्टर की गई सूची को प्रिंट करने के लिए सही सिंटैक्स का मिलान किया, मैंने इसके साथ किया history | grep iwconfig (यह सब के बाद इतना मुश्किल नहीं था); आउटपुट के साथ मैं उपयोग कर सकता हूं !n अब आसानी से पढ़ी जाने वाली फ़िल्टर्ड सूची के साथ।


3
एक अतिरिक्त चाल: उपयोग !n:p। यह पुरानी कमांड को निष्पादित किए बिना प्रिंट करता है और इसे आपके इतिहास में वापस डाल देता है। फिर अप-एरो के एक स्ट्रोक के साथ इसके पास जाएं और अब आप इसे संपादित कर सकते हैं। इस तरह की अन्य मूर्खतापूर्ण चालें बहुत हैं: ss64.com/bash/history.html
Wandering Logic

3

मैं स्टीफन के जवाब पर टिप्पणी नहीं कर सकता, लेकिन आपको आमतौर पर Ctrl + R दबाकर रखना होगा। देख यह पन्ना अधिक जानकारी के लिए।


2

"Ctrl + r" दबाएँ फिर खोज स्ट्रिंग दर्ज करें।

यदि नहीं तो आप फिर से "ctrl + r" के लिए देख रहे हैं

यदि मिल जाए, तो इसे निष्पादित करने के लिए Enter दबाएँ या दायाँ तीर दबाएँ - & gt; कुंजी का उपयोग करने से पहले इसे संपादित करने के लिए।

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