कैसे बचोगे ”!” और गोदी के पर्यावरण चर में "और"


16

मेरे पास एक डॉकटर कंटेनर है जिसे मैं चलाना चाहता हूं और इसे कुछ पासवर्ड सौंपता हूं। एक विस्मयादिबोधक चिह्न के साथ !और दूसरा एक एम्परसेंड के साथ &। इसलिए मैं इसे चलाना चाहता हूं:

docker run -i -t --rm \
-e "LDAP_FILTER=(&(objectCategory=person)(objectClass=user)" \
-e "LDAP_PASS=Secret!Password" \
user-prefix/container-name

वह काम नहीं करता। &को बदल दिया जाता है {LDAP_FILTER}और !काट दिया जाता है। मुझे पूरा यकीन है कि मुझे इनसे बचना होगा। लेकिन \!और \&काम नहीं किया।


2
क्या आपने एकल उद्धरणों के साथ प्रयास किया है? चूंकि आपके पास प्रक्षेप करने के लिए कोई चर नहीं है, इसलिए आप यहां एकल उद्धरणों के साथ भाग सकते हैं।
रिच होमोलका

1
एक अंधा शॉट: यदि -eपैरामीटर को किसी अन्य शेल इंस्टेंस द्वारा निष्पादित किया जाता है, तो आपको दो बार भागना पड़ सकता है, इसलिए प्रयास करें \\\&और \\\!
17

@ विजेता \\\ चाल मेरे लिए यह किया, सबसे अच्छा है!
साइमन श्नेल

जवाबों:


17

मुझे एक समाधान मिला:

  • डबल-कोट्स के बजाय सिंगल-कोट्स का उपयोग करना
  • &करने के लिए ampersand बच\&
  • विस्मयादिबोधक चिह्न से बच नहीं !

तो यह काम करता है:

docker run -i -t --rm \
-e 'LDAP_FILTER=(\&(objectCategory=person)(objectClass=user)' \
-e 'LDAP_PASS=Secret!Password' \
user-prefix/container-name
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.