बैश कमांड "उपयोग" सिंटैक्स की व्याख्या कैसे करें?


11

उदाहरण के लिए कोलाहल में आपको कमांड "उपयोग" आउटपुट के आउटपुट की व्याख्या कैसे करनी है।

उदाहरण के लिए, मेरे ओएस एक्स पर, cpमुझे देता है

usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file
       cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory
  • नेस्टेड विकल्प, जैसे -एच भीतर -R, क्या दर्शाता है?
  • क्या ऊपरी और निचले मामले का कोई अर्थ है?
  • कब एक तर्क वैकल्पिक है, आवश्यक?

मुझे मेरे एक कार्यक्रम के खिलाफ एक टेलनेट कमांड लाइन को लागू करने की आवश्यकता है और मैं इसे सीधे प्राप्त करना चाहूंगा।

जवाबों:


15

किसी के लिए यह समझने की कोशिश करना कि आउटपुट का क्या मतलब है, सबसे अच्छा तरीका है man man

गंभीरता से :-) सम्मेलनों को सीखने के लिए समय निकालें, यह वास्तव में मदद करता है।

   The following conventions apply to the SYNOPSIS section and can be used
   as a guide in other sections.

   bold text          type exactly as shown.
   italic text        replace with appropriate argument.
   [-abc]             any or all arguments within [ ] are optional.
   -a|-b              options delimited by | cannot be used together.
   argument ...       argument is repeatable.
   [expression] ...   entire expression within [ ] is repeatable.

+1 मेरे पद को निरर्थक के रूप में हटा रहा है।
वार्नर

man manCentOS 6.6 पर यह खंड नहीं है; man manमैक ओएस एक्स 10.7.4 पर न तो संस्करण । मैं इसे कहाँ पा सकता हूँ?
वाइल्डकार्ड

यह मिला, यह man man-pagesCentOS में है और man manpagesMac OS X (जो BSD कमांड का उपयोग करता है) पर है।
वाइल्डकार्ड

यह उत्तर, और साथ ही man manकमांड उन मामलों को कवर करने के लिए प्रतीत नहीं होता है जहां इनपुट एक एन्यूमरेशन में आइटम में से एक होना चाहिए। उदाहरण के लिए<env> - must be one of [dev | test | uat | perf | prod]
Addison

2

सबसे पहले, जबकि सामान्य सम्मेलन हैं, वे समान रूप से लागू नहीं होते हैं।

  • इस मामले में, यह कह रहा है कि अगर आप का उपयोग करें -R( "प्रत्यावर्तन" इससे स्पष्ट है), तो आप उपयोग कर सकते हैं -H, -Lया -P। यदि आप उपयोग नहीं करते हैं -R, तो वे विकल्प प्रासंगिक नहीं हैं।
  • हां, मामला लगभग हमेशा महत्वपूर्ण होता है। इसलिए आमतौर पर -hऔर -Hपूरी तरह से अलग चीजें करते हैं।
  • वर्ग कोष्ठक आमतौर पर इंगित करते हैं कि एक विकल्प या तर्क "वैकल्पिक" है। (उनके सामने हाइफ़न वाली चीजें "विकल्प" हैं, हाइफ़न के बिना शब्द तर्क हैं।) कोष्ठक के बिना विकल्प या तर्क आम तौर पर आवश्यक होते हैं। आपके उदाहरण में, "source_file" और "target_directory" दोनों की आवश्यकता है। "..." इंगित करता है कि पिछले तर्क को दोहराया जा सकता है।

ध्यान देने योग्य अन्य बिंदु:

  • ऊर्ध्वाधर पट्टी "या" इंगित करती है। तो [-fi | -n]इंगित करता है कि आप या तो -fऔर / या के -iसाथ संयोजन में उपयोग कर सकते हैं -n
  • कोष्ठक में समूहीकृत विकल्प इंगित करते हैं कि आप उनमें से किसी का भी उपयोग कर सकते हैं। तो [-apvX]इंगित करता है कि आप उन विकल्पों में से किसी भी संयोजन का उपयोग कर सकते हैं। वे भी एक साथ तोड़े जाने की जरूरत नहीं है। तो -a -v -pएक वैध संयोजन होगा।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.