मुझे टर्मिनल कमांड पर कैसे मदद मिल सकती है?


33

मैं अक्सर चीजों को देखता हूं

पढ़ने के अधिक जानकारी के लिए पढ़ने के xyz ' रों आदमी पेज। देखman xyz

info xyz

तो मुझे आश्चर्य है:

  • मैं आम तौर पर टर्मिनल कमांड पर कैसे मदद ले सकता हूं?
  • वास्तव में ये आदमी और जानकारी पृष्ठ क्या हैं?
  • मैं उन्हें कैसे देख और देख सकता हूं?



मैं tldr.sh का भी उल्लेख करना चाहूंगा , जो कि मैन पेज को बेहतर तरीके से सरल और प्रस्तुत करने का प्रयास है।
नहीं

@ Nodon'tshownmyrealname क्या आप इसके बारे में उत्तर लिखेंगे tldr? आप उल्लेख भी कर सकते हैं cheatऔर शायद धोखा भी दे सकते हैं ।
मिठाई

जवाबों:


44

एक आदमी पृष्ठ क्या है ?

एक मैन पेज (मैनुअल पेज के लिए छोटा) उबंटू जैसे यूनिक्स जैसे ओएस पर सॉफ्टवेयर प्रलेखन का पारंपरिक रूप है। आदेशों और कार्यक्रमों के विशाल बहुमत के लिए एक पुरुष पृष्ठ है जो इसके विकल्पों को सूचीबद्ध करता है और इसके उपयोग की व्याख्या करता है।

मैं मैन पेज कैसे खोज और देख सकता हूं?

एक टर्मिनल में ऑफ़लाइन

मैन पेज आपके सिस्टम पर उनके द्वारा बताई गई कमांड के साथ स्वचालित रूप से इंस्टॉल हो जाते हैं। मैन पेज देखने और खोजने के लिए कमांड है man:

man mv

mvसमय का मैन पेज प्रदर्शित करता है

man -k mv

स्ट्रिंग के लिए सभी स्थापित मैन पेजों के नाम और संक्षिप्त विवरण mv। POSIX एक्सटेंडेड रेग्युलर एक्सप्रेशंस की अनुमति है और यह एक खोज है , इसलिए यह भी उदाहरण के लिए मिल जाएगा git-mvऔर semver, यदि आप इसके बजाय वास्तव में mvउपयोग करना चाहते हैं ^mv$

देखें कि `आदमी` और` आदमी` (#) `में क्या अंतर है? मैन पेज सेक्शन के बारे में पढ़ने के लिए। अधिक जानकारी के लिए manमैन पेज पढ़ें । ;)

मैं कैसे प्रभावित कर सकता हूं कि एक आदमी पृष्ठ कैसे प्रदर्शित किया जाता है?

मैन पेज प्रदर्शित करने का डिफ़ॉल्ट प्रोग्राम है less। यह तथाकथित पेजर एक उपयोगी खोज फ़ंक्शन प्रदान करता है, बस /खोज शब्द के बाद दर्ज करें, उदा

/--version

और दबाएँ Enter। यह हर खोज को चिह्नित करेगा और पहले वाले को स्क्रॉल करेगा। प्रेस Nअगले खोज पर जाने के लिए और ⇧ Shift+ Nपिछले एक (देखने के लिए जाने के लिए मैं एक मैनपेज भीतर खोज कर सकते कैसे? )। आदेशों की सूची के लिए प्रेस Hबाहर निकलने के लिए, lessप्रेस Q

बगल में lessदेखते हैं अन्य पेजर : उपलब्ध pg, mostऔर w3mसिर्फ सूची से तीन। मेरा सुझाव है most: यह महत्वपूर्ण शब्दों के एक बहुत ही उपयोगी रंग के साथ आता है जो एक आदमी पृष्ठ को पढ़ने और नेविगेट करने में बहुत आसान बनाता है, अपने लिए देखें:

सबसे स्क्रीनशॉट mv के मैनपेज प्रदर्शित करता है

अपने डिफ़ॉल्ट पेजर से भिन्न किसी पुरुष पृष्ठ को देखने के लिए -Pविकल्प का उपयोग करें , जैसे:

man -P most mv

यदि आप डिफ़ॉल्ट पेजर मान बदलना चाहते हैं तो आपके पास दो विकल्प हैं:

  • पूरी तरह से डिफ़ॉल्ट पेजर बदलें man

    export MANPAGER=most
    

    परिवर्तन को लगातार बनाए रखने के लिए इस कमांड को अपनी ~/.bashrcफ़ाइल में जोड़ें ।

  • अपने पूरे सिस्टम के डिफ़ॉल्ट पेजर को बदलें

    sudo update-alternatives --config pager
    

प्रशंसक भी (ab) के vimरूप में उपयोग कर सकते हैं MANPAGER, muru द्वारा लिखित इस लेख को देखें ।

मैन पेज आपके टर्मिनल एमुलेटर सेटिंग्स में निर्दिष्ट फॉन्ट में प्रदर्शित होते हैं। यदि आप नियमित रूप से टर्मिनल के साथ काम करते हैं तो आप इस फ़ॉन्ट को बदलना चाह सकते हैं; मैं केवल हैक की सिफारिश कर सकता हूं - एक टाइपफेस जो स्रोत कोड के लिए डिज़ाइन किया गया है , इसकी सुंदरता के लिए ऊपर स्क्रीनशॉट देखें।

GUI के माध्यम से ऑफ़लाइन

एक साधारण GUI के साथ मैन पेज प्रदर्शित करने का एक अच्छा और आसान तरीका प्रीइंस्टॉल्ड yelpप्रोग्राम है। yelpनिष्पादित yelp man:PROGRAMया gnome-help man:PROGRAMउदाहरण के साथ एक आदमी पृष्ठ शुरू करने के लिए:

yelp man:mv

आप अपने पसंदीदा ब्राउज़र के साथ मैन पेज भी देख सकते हैं , देखें कि मैं वेब ब्राउज़र में मैन पेज कैसे खोल सकता हूँ? , के लिए जैसे man mvमें firefox:

man -Hfirefox mv

अंतिम लेकिन कम से कम आप मैन पेजों को पीडीएफ में नहीं बदल सकते हैं और उन्हें अपने पसंदीदा पीडीएफ दर्शक के साथ देख सकते हैं, देखें: क्या जानकारी / मैन पेजों को पीडीएफ में प्रिंट करने का कोई तरीका है?

ऑनलाइन

http://manpages.ubuntu.com

आप शॉर्टहैंड URL manpg.es/PROGRAM, जैसे http://manpg.es/mv के साथ वर्तमान में समर्थित उबंटू संस्करण के रिपॉजिटरी के माध्यम से उपलब्ध कार्यक्रमों के मैन पेज देख सकते हैं । यह नवीनतम उबंटू रिलीज के mvलिए मैन पेज खोलता है , आप शीर्ष बार में एक अलग रिलीज चुन सकते हैं। मैन पेज खोजने के लिए आप http://manpages.ubuntu.com/cgi-bin/search.py?q=mv का उपयोग कर सकते हैं ।

जैसा कि ऊपर बताया गया है कि manकेवल सिस्टम पर स्थापित सॉफ्टवेयर के मैन पेज प्रदर्शित कर सकते हैं। पैकेज में उपलब्ध टर्मिनल पेजर का उपयोग करके http://manpages.ubuntu.com से मैन पेज देखने के लिए ।dmanbikeshed

अन्य स्रोत

जब आप अन्य ऑनलाइन स्रोतों से प्रलेखन पढ़ते हैं, तो प्रोग्राम संस्करण पर नज़र रखना एक अच्छा विचार है। अधिकांश कार्यक्रमों में एक --versionविकल्प होता है जो प्रश्न में कार्यक्रम के संस्करण को प्रदर्शित करता है, जैसे

$ mv --version
mv (GNU coreutils) 8.25

बहुत सारी वेबसाइटें हैं जो मैन पेज आसानी से उपलब्ध कराने के लिए खुद को समर्पित कर रही हैं, मैं बस उन दो को प्रस्तुत करने जा रहा हूं जिन्हें मैं सबसे अधिक पसंद करता हूं:

  • man7.org उपयोगी सिंटैक्स हाइलाइटिंग के साथ आता है, लेकिन यह केवल प्रोग्राम के अंतिम रिलीज़ किए गए संस्करण को दिखाता है
  • manpag.es उबंटू के मैन पेजों को होस्ट करता है जो लंबे समय तक ईओएल जारी करता है

स्रोत पहले से लिंक नहीं है: https://wiki.ubuntuusers.de/man/


एक और सहायक चाल (कम से कम यदि आप एक प्रोग्रामर हैं) तो अपनी पसंद के टेक्स्ट एडिटर में आदमी के आउटपुट को डंप करने के लिए एक छोटी सी स्क्रिप्ट लिखना है। जैसे (\ n न्यूलाइन है) #! / Bin / tcsh \ n सेट नाम = $ argv [$ # argv] \ n सेट फ़ाइल = /tmp/man.$name.out\n / usr / bin / man * * | col -bx> $ file \ n (आपके संपादक का पथ) $ file \ n rm $ file \ n एक समान लेकिन संपादक-विशिष्ट मैक्रो आपको संपादक के भीतर से आदमी को कॉल करने की अनुमति देगा, जो काफी सहायक है।
jamesqf

@jamesqf दिलचस्प है, आप ऐसा क्यों करते हैं और कब करते हैं? जैसा कि संपादक आमतौर पर स्टड से पढ़ने में सक्षम होते हैं आप इसे उदाहरण के लिए सरल कर सकते हैं man $*|col -bx|nano -या man $*|col -bx|kate -i
मिठाई

@jamesqf यदि आप खोज सकते हैं या आसानी से नेविगेट करने के लिए पाठ फ़ाइल में आदमी पेज निर्यात करते हैं, क्या तुम सच में पर एक नज़र रखने पर विचार करें "कम आदेशों की सारांश" page.It में टाइप 'h' द्वारा खोला जा सकता less( manउपयोग lessपृष्ठांकन के लिए आदेश तो यह manभी काम करता है)
लुडोविक रोंस

@ लुडोविक राइडर्स: मैं इसे दो कारणों से कम करने के बजाय अपने संपादक में करता हूं। पहला, क्योंकि मैं अपने संपादक के आदेशों को जानता हूं (जो कम आदेशों की तुलना में कहीं अधिक शक्तिशाली हैं), और मुझे अभी तक आदेशों के एक और सेट को सीखने में परेशान नहीं करना है, जिसे मैं निश्चित रूप से विभिन्न संदर्भों में भ्रमित करूंगा। दूसरा, क्योंकि मैं संपादक संस्करण को कीपर (Alt-m, जैसा कि होता है) को हुक कर सकता हूं और इस तरह किसी भी फ़ंक्शन कॉल पर सहायता प्राप्त कर सकता हूं जिसमें एक मैन पेज है। क्योंकि मैं इसे किस तरह से करता हूं, मैंने इसे 20+ साल पहले लिखा था, और इसने काफी अच्छा काम किया।
jamesqf

@jamesqf PAGER = "vim -" सेट करेगा?
d33tah

13

मूल बातें पहले से ही कवर की गई हैं, लेकिन मुझे लगता है कि एक वेबसाइट आपको यह बताने के लिए काफी मददगार है कि एक कमांड क्या है https://explainshell.com , जो अपने सेक्शन में एक कमांड को तोड़ता है और दिखाता है कि प्रत्येक बिट क्या करता है।

यहाँ छवि विवरण दर्ज करें


1
+1 यह बिलकुल नहीं है कि जब मैं इस प्रश्नोत्तर को लिखता था तो मैं ऐसा नहीं था, लेकिन यह एक महान संसाधन है जिसके बारे में मुझे नहीं पता था - बहुत बहुत धन्यवाद! जैसा कि अन्य उत्तर जानबूझकर एक मुख्य विषय को कवर करते हैं, शायद आप सामान्य रूप से ऑनलाइन टूल को कवर करने के लिए अपने उत्तर का विस्तार करते हैं? shellcheck.net के मन में आता है ...
मिठाई

12

जानकारी पृष्ठ क्या है ?

साथ - साथ

man program-name

वहाँ भी अक्सर है

info program-name

कभी-कभी वे समान (डुप्लिकेट) होते हैं, लेकिन कभी-कभी इनमें से किसी एक पृष्ठ में अधिक जानकारी होती है। उदाहरण के लिए

info ddrescue

से अधिक जानकारी है

man ddrescue

तथा

info date

से अधिक जानकारी है

man date

के बीच संतुलन manऔर infoविशेष कार्यक्रम [पैकेज] को बनाए रखने वाले लोगों की नीति पर निर्भर करता है।

अधिक जानकारी के लिए यह लिंक देखें,

unix.stackexchange.com/questions/19451/difference-between-help-info-and-man-command


11

helpआज्ञा क्या है ?

helpbashनिर्मित कमांड के बारे में उपयोगी जानकारी प्रदर्शित करता है । यह केवल बैश शेल कमांड के लिए मदद प्रदान करता है। आप यह typeनिर्धारित करने के लिए उपयोग कर सकते हैं कि क्या कोई कमांड ऐसा अंतर्निहित है, उदाहरण के लिए type echoबनाम type rm

इसे एक पैटर्न के साथ एक तर्क के रूप में कहा जाता है:

help if

ifकमांड के लिए सहायता पृष्ठ प्रदर्शित करता है । यदि आप केवल कमांड कमांड के सिंटैक्स में रुचि रखते हैं -s, तो विकल्प का उपयोग करें , यदि आप पृष्ठ प्रारूप उपयोग helpमें आउटपुट का उत्पादन करना चाहते manहैं -m। लंबे समय तक मदद करने वाले ग्रंथों को आसानी से देखने के लिए आप आउटपुट को अपने पसंदीदा पेजर में देख सकते हैं (देखें यह उत्तर "मैं कैसे प्रभावित कर सकता हूं" अनुभाग):

help -m if | less

के साथ तुलना manऔरinfo

आप निम्न आदेशों को चला सकते हैं और उनकी तुलना कर सकते हैं:

help echo  # for the bash built-in command `echo`
man echo   # for the program `/bin/echo`
info echo  # for the program `/bin/echo`

जैसे इस उदाहरण में ऐसे प्रोग्राम हैं जो बिल्ट-इन और एक सामान्य प्रोग्राम दोनों के रूप में उपलब्ध हैं (देखें कि वहाँ एक / बिन / गूंज क्यों है और मैं इसका उपयोग क्यों करना चाहूंगा? ), इस मामले में मैन पेज में आमतौर पर एक शामिल होता है। ध्यान दें कि संकेत।

अधिक जानकारी के लिए इस लिंक को देखें: मदद, सूचना और मैन कमांड के बीच अंतर · U & L

एक कार्यक्रम का विकल्प -hऔर / या--help

आमतौर पर कम से कम एक विकल्प के माध्यम से उपलब्ध कार्यक्रमों में अंतर्निहित मदद होती है -h, --helpया -?:

PROGRAM -h
PROGRAM --help
PROGRAM -?

दोनों विकल्पों हैं -hऔर --helpमौजूद हैं, वे अक्सर बराबर हैं, लेकिन कभी कभी आप के साथ मिलता है 'और अधिक मदद की' --help, -H, --longhelp, --help-allया इसी तरह के आदेशों। यह व्यवहार प्रोग्राम man/ infoपृष्ठ में दर्ज़ है ।

आमतौर पर के माध्यम से manऔर अधिक जानकारी है info, लेकिन कभी कभी के माध्यम से विशेष जानकारी है -h। के आउटपुट को चलाएं और तुलना करें

man lsblk

तथा

lsblk -h

कुछ कार्यक्रम पसंद करते हैं df, tarऔर कुछ और के लिए rsyncविकल्प का उपयोग करते -hहैं। यह प्रत्येक कार्यक्रम के man/ infoपृष्ठ में वर्णित है ।

फिर से आप अपने पसंदीदा पेजर को आउटपुट पाइप कर सकते हैं, जैसे:

lsblk -h | less

उल्लेख करने के लिए धन्यवाद --help, यह अक्सर केवल एक चीज है जिसकी मुझे सबसे अधिक कमांड की आवश्यकता होती है, और हमेशा पहली चीज जो मैं कोशिश करता हूं।
JPhi1618

6

एक ट्यूटोरियल क्या है और मुझे एक उपयोगी कैसे मिल सकता है

जब आपके पास लिनक्स का कुछ अनुभव होता है, तो मैन पेज, इंफो पेज और हेल्प ऑप्शन बहुत उपयोगी होते हैं। लेकिन शुरुआत में, उन्हें समझना मुश्किल हो सकता है; आरंभ करने के लिए आपको अधिक विस्तृत सहायता की आवश्यकता है।

आप ट्यूटोरियल में विस्तृत मदद पा सकते हैं ,

  • एक कमांड का उपयोग करने के लिए विस्तृत विवरण
  • उदाहरण

आमतौर पर आपको इंटरनेट के माध्यम से ट्यूटोरियल मिलेंगे, कभी-कभी मैन पेज या इंफो पेज में एक उपयोगी ट्यूटोरियल होता है।

  • उदाहरण के लिए, अपने वेब ब्राउज़र के खोज इंजन का उपयोग करते समय कुछ खोज स्ट्रिंग आज़माएं

    • निर्दिष्ट उपकरणों की तलाश है

      • नैनो ट्यूटोरियल
      • sed ट्यूटोरियल
      • imagemagick ट्यूटोरियल
      • rsync ट्यूटोरियल
    • कार्यों की तलाश (और विभिन्न उपकरणों के लिए ट्यूटोरियल खोजना)

      • लिनक्स टेक्स्ट मोड एडिटर ट्यूटोरियल
      • लिनक्स बैच मोड चित्र संपादक ट्यूटोरियल

कुछ ऐसे लिंक देखें जिन्हें आप पाते हैं, और एक ट्यूटोरियल के साथ काम करना शुरू करते हैं जो आपके लिए आवश्यक है

  • man rsync मेरे लिए एक ट्यूटोरियल के रूप में उपयोग करने के लिए पर्याप्त विस्तृत है, लेकिन आप अधिक विवरण चाहते हैं (और इंटरनेट के माध्यम से एक ट्यूटोरियल की तलाश कर सकते हैं)।
  • info ddrescue एक अच्छा अंतर्निहित ट्यूटोरियल है।

बिल्कुल सही, आपके निरंतर योगदान के लिए धन्यवाद - मुझे लगता है कि यह प्रश्न एक बहुत ही उपयोगी स्रोत बढ़ेगा जिसे हम इंगित कर सकते हैं। मैं प्रश्न में सामग्री का एक सूचकांक जोड़ूंगा और स्क्रॉल करने वाले दर्शकों को उत्तर लिंक करूंगा।
मिठाई

1
@ डेडर्ट, यह आपके द्वारा एक अच्छी पहल है, और मुझे योगदान करने में खुशी हो रही है :-)
सुडोदुस


2

मेरा पसंदीदा कमांडलाइनफू डॉट कॉम है , आपके .bashrcया .zshrcइस तरह का कोई फंक्शन है

cmd() { curl "http://www.commandlinefu.com/commands/matching/$(echo "$@" \
    | sed 's/ /-/g')/$(echo -n $@ | base64)/plaintext" ;}

चलो कोशिश करते हैं cmd mount cd, मैंने अपने फ़ंक्शन cmdको कॉल किया, आप इसे जो चाहें कह सकते हैं

यहाँ छवि विवरण दर्ज करें

ऊपर दिए गए फ़ंक्शन कमांडलाइनफू की वेबसाइट को खोजते हैं, यह एक समुदाय संचालित वेबसाइट है जैसे कि यहां उपयोगकर्ता उपयोगकर्ताओं को आदेशों को आगे बढ़ाने की क्षमता रखते हैं। तब यह शीर्ष परिणाम दिखाता है जैसा कि चित्र में है।

या वहाँ ऐसा करने के लिए का उपयोग करके एक नया तरीका है यह

http://samirahmed.github.io/fu/

यहाँ एक ट्यूटोरियल है

चलो करे fu cron

यहाँ छवि विवरण दर्ज करें


1

एक टर्मिनल विंडो खोलने और कमांड जारी करने का तरीका जानें man man। जब भी यह नीचे "अधिक" कहता है, तो अगली स्क्रीन पर आगे बढ़ने के लिए स्पेस बार टाइप करें। आप मैन्युअल पढ़ने कार्यक्रम के लिए मैन्युअल पृष्ठ पढ़ रहे हैं, man!

आपके द्वारा प्राप्त करने के लिए चिकन और अंडे की एक बहुत छोटी समस्या है। manआदेश में मदद करता है आप सिस्टम पर हर आदेश के बारे में मैनुअल पढ़ें। लेकिन manआउटपुट नामक एक अन्य कमांड का उपयोग करता है more। आप के man moreलिए अतिरिक्त नेविगेशन कमांड सीखने के लिए भी पढ़ सकते हैं more

और वह सब कुछ है! मैंने सैकड़ों कमांडों के लिए मैन पेज पढ़कर यूनिक्स के बारे में जो कुछ भी सीखा है, उसे सीखा।


3
उबंटू पर, डिफ़ॉल्ट रूप से manउपयोग करता lessहै, नहीं more
मूरू

0

कई ने manपहले ही उल्लेख किया है । manकुछ के लिए एक छोटी सी सुविधा के बारे में पता है

man -t $ (manpage) > manpage.ps

जो मैनुअल पेज के लिए पोस्टस्क्रिप्ट फ़ाइल का उत्पादन करता है। पोस्टस्क्रिप्ट को आसानी से पीडीएफ में बदला जा सकता है। यह डिफ़ॉल्ट कमांड लाइन टर्मिनल संस्करण की तुलना में बहुत अच्छे स्वरूपण में परिणत होता है man

उदाहरण के लिए:

man -t man> man.ps

pstopdf man.ps

मैंने अभी इसे उबंटू पर परीक्षण किया है (और इसे अन्य लिंज़ पर काम करना चाहिए) और मैक ओएस।

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