जवाबों:
से man bash
(हाँ, यह एक बड़ा आदमी पृष्ठ है, आमतौर पर Google खोज तेज़ है):
-x
प्रत्येक साधारण कमांड का विस्तार करने के बाद, कमांड के लिए, कमांड कमांड, कमांड का चयन करें, या कमांड के लिए अंकगणित, PS4 के विस्तारित मूल्य को प्रदर्शित करें, उसके बाद कमांड और उसके विस्तारित तर्क या संबंधित शब्द सूची।
प्रभावी रूप से: जब आप एक स्क्रिप्ट चलाते हैं, तो यह उस स्क्रिप्ट में किए गए सभी कार्यों को दिखाएगा। तो सभी ifs, लूप और कमांड चलते हैं। डीबगिंग के लिए बहुत उपयोगी है।
-v
खोल शेल इनपुट लाइनों के रूप में वे पढ़ रहे हैं। जब कोई स्क्रिप्ट चलाई जाती है, तो वह फाइल को पढ़ते ही पूरी स्क्रिप्ट को प्रिंट कर देगी। जब आप शेल को अंतःक्रियात्मक रूप से उपयोग करते हैं, तो आपके द्वारा एंटर दबाने के बाद यह प्रत्येक कमांड को दिखाएगा।
ऊपर दिए गए उद्धरण set
बिलिन कमांड के स्पष्टीकरण से हैं man bash
, जिसमें यह भी बताया गया है कि विकल्प set
भी तर्क के रूप में पारित किए जा सकते हैं (शेबंग लाइन पर):
विकल्प डिफ़ॉल्ट रूप से बंद हैं जब तक कि अन्यथा नोट न किया गया हो। इन विकल्पों को बंद करने के
+
बजाय उपयोग करने से-
। विकल्प को शेल के आह्वान के तर्क के रूप में भी निर्दिष्ट किया जा सकता है। विकल्पों के वर्तमान सेट में पाया जा सकता है$-
। जब तक कोई अमान्य विकल्प सामने न आए, रिटर्न स्थिति हमेशा सही होती है।
/-x
एक दो बार आपको वहां man
(वास्तव में, यह less
) मिल जाएगा। आप अंतिम खोज को /
+ अप एरो के साथ दोहरा सकते हैं , लेकिन स्क्रीन से दूर किसी भी वर्तमान खोज को हिट करने के लिए आपको नीचे पेज करना होगा ( /
यह आगे की खोज है, ?
पीछे है)।
n
आगे की खोज के लिए और N
पिछड़े खोज के लिए उपयोग करके कम में अगली हिट को खोजना आसान है ।
test -x
कंडिशनल एक्सप्रेशंस (तीसरी हिट) के तहत देख रहा था , नहीं set -x
। -x
में man bash
एक बहुत बुरा मामला है इसलिए अधिक विशिष्ट मदद मिल रही है: यदि आप का उपयोग करते हैं /^\s+-x\b
, (= लाइन की शुरुआत + व्हाट्सएप + -x
+ शब्द सीमा) आप 5 हिट में सही एक के लिए मिलता है ... यह 4 था, लेकिन तथ्य x
मैच के लिए X
... जो मुझे एक ऐसे प्रश्न की ओर ले जाता है जिसका अर्थ मैं पूछना चाहता हूं । वैसे भी, w / अधिकांश मैन पेज ^\s+-x\b
पैटर्न को स्विच के लिए पहले प्रयास करना चाहिए।
बैश मैन पेज इशारा करता है कि इन विकल्पों को और नीचे समझाया गया है, वास्तव में, लेकिन यह आसानी से अनदेखा है।
इसलिए आपकी समस्या को वास्तव में पढ़ना चाहिए: बैश मैन पेज का विकल्प अनुभाग अधूरा है। इसका उत्तर या तो उन्हें डुप्लिकेट करना होगा, या विकल्प अनुभाग के पहले भाग को उजागर करना होगा:
OPTIONS
All of the single-character shell options documented in the descrip‐
tion of the set builtin command can be used as options when the shell
is invoked. [ ... ]
अंत में, इसे पूरा करने के लिए: वे किसी भी POSIX शेल के लिए स्क्रिप्ट के कोड को दिखाने के लिए मानक विकल्प हैं जब पढ़ा ( -v
) और जब चला ( -x
)। Stderr पर आउटपुट दिखाई देगा।