मुझे यह जानने की उत्सुकता है कि विभिन्न कमांड के विकल्पों को याद करने के लिए आप किस ट्रिक का उपयोग करते हैं? आदमी पृष्ठों की तलाश में हर समय समय लगता है और इतना अच्छा नहीं है!
man
पृष्ठ पढ़ना बहुत अच्छा है ... :)
मुझे यह जानने की उत्सुकता है कि विभिन्न कमांड के विकल्पों को याद करने के लिए आप किस ट्रिक का उपयोग करते हैं? आदमी पृष्ठों की तलाश में हर समय समय लगता है और इतना अच्छा नहीं है!
man
पृष्ठ पढ़ना बहुत अच्छा है ... :)
जवाबों:
चाल सरल है: आप बस नहीं। यह समय की बर्बादी है और अभी जरूरी नहीं है। कमांड विकल्प याद रखना विशेष रूप से उपयोगी कौशल नहीं है। यह समझना अधिक महत्वपूर्ण है कि सामान सामान्य रूप से कैसे काम करता है और एक अस्पष्ट विचार है कि कौन से उपकरण पहले से मौजूद हैं और आप उनके लिए क्या उपयोग करते हैं। यहां एक बहुत ही महत्वपूर्ण कौशल यह जानना है कि जिस सामान के बारे में आप अभी तक नहीं जानते हैं, उसके बारे में कैसे पता करें।
मैन पेज समय लेने वाली हैं? ऐसा नहीं। ऐसा नहीं है कि आपको उन्हें पढ़ना है - कम से कम, हर बार नहीं - एक खोज फ़ंक्शन है। तो अगर मुझे याद नहीं है जो गुप्त विकल्प के लिए एक था hdparm
कुछ WD डिस्क पर अक्षम निष्क्रिय टाइमर के लिए, मैं करता हूँ man hdparm
और /idle3
और हे, यह था -J
। इस तरह के सामान की तलाश इतनी जल्दी है कि मुझे बाद में इसे करने की याद भी नहीं है।
कल्पना कीजिए कि कोई वास्तव में सभी hdparm
विकल्पों को याद कर रहा है । क्या समय की बर्बादी है।
यदि आप केवल विकल्पों को याद रखना चाहते हैं तो यह ठीक है क्योंकि आप उनका अक्सर उपयोग करते हैं। इसके बारे में सोचे बिना भी यह अपने आप हो जाता है। लेकिन वास्तव में होशपूर्वक उन्हें याद करने में समय बिता रहे हैं ... क्या है जो अच्छा होना चाहिए? एक पेपर टेस्ट?
man hdparm | less -p idle3
वांछित पद पर कूदने का एक आसान तरीका भी है ...
rm -i -f -r
, ln -s
, df -s -h
, cp -r -i
, ls -l -h -a
, आदि (सूची हर व्यक्ति के लिए भिन्न होता है)।
डिफ़ॉल्ट रूप से Zsh में रन-हेल्प फंक्शन है Alth। इस फ़ंक्शन के साथ आप कई या जटिल विकल्पों के साथ एक कमांड टाइप करना शुरू कर सकते हैं जो rsync
उदाहरण के लिए याद रखना मुश्किल है , और फिर उस कमांड का man
पेज खुल गया है। इसलिए:
rsync Alth
man
पृष्ठ पढ़ें और वह कार्य करें जो आपके लिए आवश्यक स्विच करता है, हिट करता है qऔर फिर आपको अपने कमांड प्रॉम्प्ट पर लौटा दिया जाता है, ठीक उसी जगह जहां आपने छोड़ा था, आवश्यक विकल्पों के साथ कमांड को पूरा करने के लिए तैयार:
rysnc -azP file dir/
विकी नोटों के रूप में:
प्रपत्र रन-हेल्प-कमांड के सहायक कार्यों को परिभाषित करके फ़ंक्शन को और अधिक अनुकूलित किया जा सकता है। मानक वितरण में तीन ऐसे कार्य उपलब्ध हैं: रन-हेल्प-गिट, रन-हेल्प-एसवीके, और रन-हेल्प-एसवीएन।
bash
है bash-complete
जो आदेशों का एक बहुत के लिए पैरामीटर विकल्पों में से एक बहुत की आपूर्ति करेगा।
zsh
bash
पूरा होने की सूची, या समूहीकरण प्रविष्टियों के --classify -F -- append file type indicators
लिए विवरण जोड़ने का समर्थन नहीं करता है ( उदाहरण के लिए zsh के GNU ls पूरा होने में) तो लगभग zsh के रूप में उपयोगी नहीं है।
एक बहुत लंबे कमांड इतिहास का उपयोग करना, और इसके माध्यम से खोज करना, बहुत उपयोगी है।
मैं मूल रूप से सभी शेल इतिहास फ़ाइलों को इकट्ठा करता हूं, और उनके माध्यम से grep करता हूं।
पाए गए परिणाम कई मामलों में बहुत उपयोगी हैं, क्योंकि अच्छे कीवर्ड के लिए खोज करना आसान है।
आपके द्वारा उपयोग किए गए एक विशिष्ट तर्क के लिए खोज करना, एक URL की तरह, आपको संबंधित कमांड और विकल्प भी मिलते हैं। और विशिष्ट विकल्पों की तलाश में, आपको प्रासंगिक तर्क भी मिल सकते हैं।
अधिकांश कमांड में त्वरित संदर्भ के लिए --help होता है, और यह आमतौर पर यह याद दिलाने के लिए पर्याप्त है कि कुछ ऐसा था जो मैं जानता था।
उस ने कहा, -एच या यहाँ तक कि लिखने की आदत है - या -। आप कभी नहीं जानते कि उपयोग आउटपुट या मैनुअल पेज देखने से पहले -h क्या है। सबसे खराब स्थिति में -h के लिए शॉर्ट हाथ हो सकता है - थैज़ोर्ड-ऑटोमैटिक-विनाश।
--help
। -?
जरूरतों के साथ के हवाले से zsh
, csh
, tcsh
या fish
या अगर कोई फ़ाइलें जिसका नाम कर रहे हैं -
वर्तमान निर्देशिका में एक वर्ण का पालन किया। -:
वहाँ बेहतर हो सकता है।
एक विकल्प मुझे पसंद है कि उपनाम बनाने के लिए समान या समान विकल्प हैं, जैसे
alias rmi='rm -i'
alias rmiv='rm -iv'
alias rmv='rm -v'
alias cpr='cp -r'
alias cprv='cp -rv'
इस तरह आपके पास एक अच्छा शॉर्टकट है जिसे आप जल्द ही आसानी से याद कर लेंगे, लेकिन यह वास्तविक विकल्प के बारे में भी जानकारी रखेगा जो इसे दर्शाता है।
उपनाम के साथ एक और दृष्टिकोण सबसे आम विकल्प चुनना और एक सुपर शॉर्ट उर्फ बनाना है जो उनका उपयोग करता है। उदाहरण के लिए ls
मैं लगभग हमेशा करता हूं l
और ऐसा इसलिए है क्योंकि मेरे पास है:
alias l='ls -alFtrG'
एक अन्य विकल्प सिर्फ उन विकल्पों में लाना है जो आप आधार कमांड को पसंद करते हैं, जैसे
alias ls='ls -F --color=always'
अंत में अभ्यास, अभ्यास, अभ्यास और धैर्य। सामान्य विकल्प टाइप करते रहें और आप अंततः उन्हें सीख जाएंगे। दिनों में सामान्य, सप्ताह में अन्य और हाँ कुछ वर्षों में आपको ज्ञात हो जाते हैं। उस यूनिक्स प्रोग्रामिंग में एक इलाज के रूप में सोचो एक लंबे समय के लिए आप का मनोरंजन करने के लिए जारी रहेगा।
एक और विकल्प जो मुझे पसंद है वह है मेरे इतिहास को आसान बनाने के लिए एक उपनाम और इसके लिए मेरे पास दो समान उपनाम हैं:
alias hg='history | tail -200 | grep -i'
alias hga='history | grep -i'
ये मुझे उदाहरण के लिए एक कमांड के उपयोग के लिए खोज करते हैं:
hg ls
इतिहास से ls के किसी भी हाल के उपयोग
hga ls
को दिखाएगा ls के सभी उपयोगों को मेरे पूरे इतिहास से दिखाएगा।
मैंने hg को विकसित करने के बाद पाया कि hga बहुत अधिक दिखाने के लिए प्रवृत्त है।
rm -iv
करता कि क्या करता है, तो ओपी को भी याद नहीं होगा कि क्या rmiv
करता है। मुझे नहीं लगता कि यह हाइफन है कि समस्या है।
rm -iv
से safe_delete
याrm_prompt
मैं आमतौर पर करता हूं:
man ${CMD} | grep 'what was I thinking about?'
या कुछ भिन्नता। कुछ के साथ grep
आप के लिए -सी / ए / बी निर्दिष्ट कर सकते हैं s संदर्भ , के बाद , और इससे पहले कि क्रमशः। यदि नहीं, nl
और sed
बहुत अच्छी तरह से मिलान किया जा सकता है:
man hdparm | #hard to forget
nl -bp'idle3' -nln -w1 | #I had to grep man to put this together
sed -n '/^[0-9]/{N;N;N;s///p}' #no print until line begins w/ number, next,next,next
Drive's "idle3" timeout value. This timeout
controls how often the drive parks its heads
and enters a low power consumption state.
The factory default is eight (8) seconds,
zero (0) to disable the WD idle3 timer com‐
pletely (NOT RECOMMENDED!).
-k Get/set the "keep_settings_over_reset" flag
--help
यदि आपके पास है तो वही तकनीक मेनू के साथ काम करती है, लेकिन आपको ${CMD} --help 2>&1 | ..filter..
ऐसी चीजों को प्रिंट करने के लिए एक काफी मानक अभ्यास है क्योंकि आपको ऐसा करने की आवश्यकता हो सकती है stderr
।
वैसे भी, मुझे लगता है कि कहानी का नैतिक है, कम से कम man
और याद रखना grep
। शायद बाकी लोगों को पसीना नहीं आता।
grep
किसी विशेष सुविधा की तलाश में मैन पेज बनाता हूं , यह बहुत आसान है।