क्या बकवास <<वाक्यविन्यास का मतलब है?


11

रूबी संस्करण प्रबंधक (आरवीएम) जैसे स्थापित:

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

मैं समझता हूं कि पहले <का मतलब क्या है (दुभाषिया को मारना स्क्रिप्ट को फ़ीड करता है), मैं <(...)भाग के साथ भ्रमित हूं । तो, कोष्ठक यहाँ क्या करते हैं और संकेत से कम है। किन मामलों में हम एक ही वाक्यविन्यास का उपयोग कर सकते हैं?

मैंने इंटरनेट पर खुदाई करने की कोशिश की, यह SO प्रश्न मिला। /programming/2188199/bash-double-or-single-bracket-parentheses-curly-braces और ubuntuforums: http: // ubuntuforums .org / showthread.php? p = 7803008 लेकिन अभी भी हमें पता नहीं है कि हम उन कोष्ठकों का उपयोग क्यों करते हैं और हम दो बार इनपुट पुनर्निर्देशन का उपयोग क्यों करते हैं।

bash < curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer

एक ही नहीं है?

धन्यवाद।


मुझे लगता है कि बेहतर सवाल है: यह वही क्यों हैbash <(curl -s ...)
ब्रूनो ब्रोंस्की

कमांड <(...) तब काम करता है जब कमांड उस स्थान पर फ़ाइल नाम स्वीकार करता है। यदि आप इससे पहले एक और <कमांड डालते हैं तो कमांड को स्टड से इनपुट स्वीकार करना पड़ता है। कुछ कमांड या तो तरीके से काम करेंगे और यदि फ़ाइल नाम की आपूर्ति नहीं होती है तो स्टड का उपयोग करें। इस अंतर पर स्वीकृत उत्तर संकेत देता है।
ली मीडोर

जवाबों:



6

इसका अर्थ है "कोष्ठक के अंदर कमांड चलाना, और एक फ़ाइलनाम लौटाएँ जो यहाँ उस कमांड के मानक आउटपुट का प्रतिनिधित्व करता है"।

तो, यह दो आदेशों का अनुवाद करता है:

curl ... > something
bash -s stable < something

... जहां "कुछ" जादू है। (आमतौर पर, /dev/fd/...या एक पाइप।)


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