इतिहास में खोज बंद करने वाले कीवर्ड के साथ करें


13

मैं सोच रहा था कि कमांड के पहले कुछ अक्षरों को जाने बिना इतिहास में कमांड कैसे खोजें?

का उपयोग करते समय खोज Ctrl- Rबैश में, कमांड के पहले कुछ अक्षर देने होते हैं। क्या होगा अगर मैं केवल कुछ पात्रों को बीच में जानता हूं, या कुछ शुरुआत में और कुछ मध्य में?

उदाहरण के लिए, खोज करने के लिए, cat myfileमैं केवल यह जानता हूं कि इसमें atया cशुरुआत में और myकहीं बीच में है। कीवर्ड्स को लगातार पोस्ट करना पड़ता है। उदाहरण के लिए, में cat myfile, मैं दोनों की खोज करना चाहूंगा cऔर my, लेकिन Ctrl+Rदोनों को एक साथ निर्दिष्ट करने की अनुमति नहीं दूंगा।


2
मैं हर समय Ctrl-R का उपयोग करता हूं और यह मध्य पाठ को स्वचालित रूप से खोजता है। कुछ भी नहीं फैंसी, लेकिन आपके उदाहरण में सिर्फ टाइपिंग myपर्याप्त होगी। RHEL4 और साइगविन ने पुष्टि की।
एरोन डी। मरास्को 19

@ समय: आप वास्तव में कोशिश नहीं की, है ना? क्योंकि यह कमांड के बीच में अक्षरों की खोज करता है
एलेक्स

1
@alex: मैं वास्तव में ऐसे कीवर्ड कहना चाहता था जो लगातार पोस्ट नहीं किए जाते हैं। उदाहरण के लिए, में cat myfile, मैं दोनों के लिए cऔर खोज करना चाहूंगा my, लेकिन Ctrl + R दोनों को एक साथ निर्दिष्ट करने की अनुमति नहीं देगा।
टिम

जवाबों:


12

यदि आप बस उस लाइन को ढूंढना चाहते हैं (अपनी याददाश्त को जॉग करने के लिए) तो आप अपने द्वारा याद किए गए कमांड के हिस्से के लिए बस ग्रीप कर सकते हैं:

history | grep "substring"

2
यह कैसे है कि मैं 5 + साल के लिए * nix सिस्टम का उपयोग कर रहा हूं और historyअब तक कमांड के बारे में नहीं जानता ? धन्यवाद!
GMA

8

बैश केवल एक सरल स्ट्रिंग खोज है, जहां तक ​​मैं देख सकता हूं।

Zsh पर स्विच करने पर विचार करें , जिसमें एक इतिहास वाइल्डकार्ड खोज है। history-incremental-pattern-search-backwardऔर history-incremental-pattern-search-forwardडिफ़ॉल्ट रूप से कुंजियों के लिए बाध्य नहीं हैं, लेकिन आप उन्हें बांध सकते हैं:

bindkey '^X^R' history-incremental-pattern-search-backward
bindkey '^X^S' history-incremental-pattern-search-forward

फिर टाइप करें Ctrl+X Ctrl+R ^c*my


0

यदि व्यक्ति के पास वह शब्द है तो एप्रोपोस (1) को भी इस विषय के लिए एक आदमी को वापस करना चाहिए। व्हाट्स (1) केवल पूर्ण मिलान लौटाता है।

संदर्भ के लिए: एप्रोपोस == मैन-क व्हाईस == मैन-एफ

इन दोनों को वाइल्डकार्ड * और के साथ एक बड़ी मदद मिलनी चाहिए?


1
सवाल टर्मिनल में कमांड इतिहास के माध्यम से खोज करने के बारे में है ... (मैन पेजों की खोज नहीं) ... लेकिन एक पूरी तरह से अलग नोट पर, मुझे आपका उत्तर उपयोगी लगा, इसलिए +1 :)
पीटर.ओल।

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