`सेट -x` को पूर्ववत कैसे करें?


77

मैंने set -xटर्मिनल में टाइप किया।

अब टर्मिनल मेरे आउटपुट के अंतिम कमांड रन को प्रिंट करता रहता है इसलिए कमांड

~]$echo "this is what I see"

रिटर्न

+ echo 'this is what I see'
this is what I see

कोई भी मैन पेज नहीं है set, मैं कैसे set -xबंद करूं?


8
setएक शेल builtinकमांड है (कम से कम इसे बैश में), इसलिए प्रलेखन बैश के मैन पेज में पाया जाता है। /^ *SHELL BUILTIN COMMANDSसभी के बारे में setऔर उसके दोस्तों को पढ़ने के लिए मैन पेज खोजें !
dg99

4
लेकिन इसके लिए एक manपेज है set! यह POSIX प्रोग्रामर गाइड का हिस्सा है ... आपको वास्तव में वह श्रृंखला मिलनी चाहिए ... कृपया?
mikeserv

8
बैश में, टाइप करें help set
२००

@ lonewarrior556 यदि आपको उत्तर में से कोई भी मददगार मिलती है, तो क्या आप कृपया टिप्पणी कर सकते हैं और / या समाधान को चिह्नित कर सकते हैं। हम सहायता के लिए अपने समय का योगदान करते हैं ....
Simply_Me

जवाबों:


77

का उपयोग करें set +x। अधिक जानकारी:

$ type set
set is a special shell builtin

चूंकि setशेल निर्मित है, यह आपके शेल के दस्तावेज में प्रलेखित है।

सावधान रहें कि कुछ सिस्टम में शेल बिल्ड के लिए मैन पेज हैं, लेकिन यदि आप डिफ़ॉल्ट शेल का उपयोग कर रहे हैं तो ये मैन पेज सही हैं। लिनक्स पर, आपके पास पोज़िक्स कमांड पेश करने वाले मैन पेज हो सकते हैं, जो शेल बिल्डरों के लिए बदल जाएंगे क्योंकि उन्हें छाया देने के लिए स्टैंडअलोन उपयोगिता का कोई मैन पेज नहीं है; ये मैन पेज सभी बॉर्न-शैली के गोले (डैश, बैश, * ksh, और यहां तक ​​कि zsh) के लिए सही हैं, लेकिन आम तौर पर अधूरे हैं।

लॉन्ग शेल मैन पेज में बिलिन की खोज के सुझावों के लिए लंबे मैन पेज पढ़ना और खोजना देखें ।

इस मामले में, उत्तर सभी बॉर्न-शैली के गोले के लिए समान है। यदि कोई विकल्प चालू होता है, तो इसे बंद कर देता है। इस प्रकार, निशान को बंद कर देता है। अंतिम ट्रेस जो पढ़ने योग्य है वह अनुपयोगी है (शेल से बाहर निकलने को छोड़कर - कभी-कभी आप एक उपखंड का उपयोग कर सकते हैं )।set -LETTERset +LETTERset +xset +x(set -x; command to trace; other command to trace); command that is not traced


4
यह एक अच्छा उत्तर है, लेकिन अगर आपने अंतिम पैराग्राफ में अंतःस्थापित की बजाय शुरुआत में मूल "सेट + x" डाला तो यह मुझे कुछ मिनटों की बचत करेगा। (मुझे अतिरिक्त विवरण मददगार लगा।)
DA

2
{ set +x ;} 2> /dev/nullset +xट्रेस छुपाता है (हालांकि बॉर्न शेल में काम नहीं करेगा)। कुछ गोले अभी भी एक उत्पादन + 2> /dev/nullहालांकि।
स्टीफन चेज़लस


18

आपने डिबग मोड सक्षम किया है, आपको इसे बंद करने की आवश्यकता है।

निकालने का फॉर्म help set:

के बजाय + का उपयोग करना - इन झंडों को बंद करने का कारण बनता है।

तो टाइप करें set +x


1
$ set +x # is the opposite of set -x, and will reverse what you typed.

setजैसा कि आप नीचे देख रहे हैं, आपको सिर्फ एक आदमी पृष्ठ नहीं मिल सकता है :

$ type set

setएक विशेष शेल बिलिन है। अपने शेल के लिए मैन पेज में प्रलेखित करते हुए, यहां बैश मानते हुए, आप या तो विशिष्ट दस्तावेज भी प्राप्त कर सकते हैं

$ help set || builtin help set # luckily Bash has builtin help on builtin commands

बैश या श पर मैनुअल पेज एक अच्छा पढ़ा है, लेकिन इसे हल करने के लिए थोड़ा लंबा है। आपके द्वारा अन-सेट करने के लिए आवश्यक प्रभावी जानकारी -xपहले Exit Status:और अंत में पढ़ी जाती है:

के बजाय + का उपयोग करना - इन झंडों को बंद करने का कारण बनता है। झंडे को शैल के आह्वान पर भी इस्तेमाल किया जा सकता है। झंडे का मौजूदा सेट $ में मिल सकता है -। शेष n ARG स्थितिगत पैरामीटर हैं और इन्हें $ 1, $ 2, .. $ n के क्रम में सौंपा गया है। यदि कोई एआरजी नहीं दिया जाता है, तो सभी शेल चर मुद्रित होते हैं।


गलत नहीं है, लेकिन आपने मौजूदा उत्तरों से आगे क्या जोड़ा है?
जेफ स्कालर

@JeffSchaller यह प्रत्यक्षता और संक्षिप्तता के लिए संपादित किया गया है। जब मुझे इस उत्तर की आवश्यकता थी तो मुझे सही उत्तर का पता लगाने के लिए पूरे पृष्ठ को पढ़ना पड़ा। वास्तव में मैंने स्वीकार किए गए उत्तर को पढ़ना छोड़ दिया और बस उस पर help setजाकर पढ़ा। मैंने स्वीकृत उत्तर को सुधारने का प्रयास किया। unix.stackexchange.com/revisions/149137/4 यह स्वीकार किया गया था, लेकिन फिर अस्वीकार कर दिया गया। एक समाचार लेख की तरह, यह सबसे महत्वपूर्ण जानकारी के साथ शुरू होता है और यह मानता है कि किसी भी बिंदु पर पाठक रुक सकता है, प्रत्येक अगले वाक्य और पैराग्राफ में कार्यवाही की तुलना में कम महत्वपूर्ण है। यह यूनिक्स पर मेरी एसओ शैली है।
dlamblin
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.