जवाबों:
अधिक सटीक रूप से, एक डबल डैश ( --
) का उपयोग बैश बिल्ट-इन कमांड्स और कई अन्य कमांड्स कमांड ऑप्शंस के अंत को दर्शाने के लिए किया जाता है, जिसके बाद केवल पोजीशनल पैरामीटर स्वीकार किए जाते हैं।
उदाहरण का उपयोग करें: इससे आप स्ट्रिंग के लिए एक फ़ाइल टटोलना चाहते हैं -v
- सामान्य रूप -v
से मिलान अर्थ को उलटने का विकल्प माना जाएगा (केवल वे लाइनें जो मेल नहीं खातीं), लेकिन --
आप -v
इस तरह स्ट्रिंग के लिए grep कर सकते हैं :
grep -- -v file
--
में नियमित अभिव्यक्ति से विकल्पों को अलग करने के लिए काम करता है grep
, लेकिन विहित तरीका -e
/ उपयोग करने के लिए है --regexp
।
--
, हालांकि आप ध्यान देने योग्य हैं कि ऊपर दिए गए मेरे उदाहरण को भी लिखा जा सकता है grep -e -v file
(हालांकि यह बहुत भ्रामक है)।
bash
बिलिन कमांड --
विकल्प मार्कर के अंत के रूप में स्वीकार नहीं करते हैं । [
और echo
उदाहरण के लिए ( कारणों में से एक echo
मज़बूती से इस्तेमाल नहीं किया जा सकता है ) नहीं है।
शेल शेल कमांड कमांड में man bash
हम पढ़ सकते हैं :
जब तक अन्यथा उल्लेख नहीं किया जाता है, प्रत्येक अंतर्निहित कमांड इस खंड में प्रलेखित विकल्प के रूप में स्वीकार किए जाने वाले विकल्पों को स्वीकार करने से पहले
-
स्वीकार करता--
है ।
:
,true
,false
, औरtest
builtins विकल्पों को स्वीकार नहीं करते और इलाज नहीं है--
विशेष रूप से।exit
,logout
,break
,continue
,let
, औरshift
builtins स्वीकार करते हैं और प्रक्रिया तर्क के साथ शुरुआत-
की आवश्यकता के बिना--
। अन्य बिल्डिंस जो तर्कों को स्वीकार करते हैं, लेकिन वे विकल्प के रूप में निर्दिष्ट नहीं हैं, जिन्हें स्वीकार करने वाले तर्क-
अवैध विकल्पों के रूप में शुरुआत करते हैं और--
इस व्याख्या को रोकने की आवश्यकता होती है।ध्यान दें कि विकल्पों के अंत की
echo
व्याख्या नहीं करता है--
।
man bash
(अगली बार के लिए नोट-से-स्व:)।
POSIX.1-2017
12.2 उपयोगिता सिंटेक्स दिशानिर्देश
दिशानिर्देश 10:
पहला
--
तर्क जो विकल्प-तर्क नहीं है, उसे विकल्प के अंत का संकेत देने वाले परिसीमन के रूप में स्वीकार किया जाना चाहिए। किसी भी निम्नलिखित तर्क को ऑपरेंड के रूप में माना जाना चाहिए, भले ही वे '-
' चरित्र से शुरू हों ।
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap12.html#tag_12_02
set
बिल्ट-इन, जहां यह बिल्कुल आवश्यक है।