Ubuntu 14 पर एक निर्देशिका बनाने पर, शेल इस Mkdir को बाहर निकालता है: लापता ऑपरेंड किसी को पता है कि डायन ऑपरेंड किस बारे में बात कर रहा है?

Mkdir -p && chown -R ubuntu: && chmod + rw
Mkdir: missing operand

कैपिस्ट्रानो लिपि

mkdir -p #{pids_path} && chown -R #{user}:#{group} #{pids_path} && chmod +rw #{pids_path}
mkdir -p #{sockets_path} && chown -R #{user}:#{group} #{sockets_path} && chmod +rw #{sockets_path
-1
japoowf 31 जिंदा 2017, 04:27
ऐसा प्रतीत होता है कि आप # का उपयोग कर रहे हैं जहां आपको $ का उपयोग करना चाहिए।
 – 
chepner
31 जिंदा 2017, 04:44
यह एक कैपिस्ट्रानो लिपि है
 – 
japoowf
31 जिंदा 2017, 04:46
एक खोल निष्पादन करना
 – 
japoowf
31 जिंदा 2017, 04:46
#{...} एक स्ट्रिंग में एक एक्सप्रेशन का इंटरपोलेशन करने के लिए रूबी सिंटैक्स है। आपकी स्क्रिप्ट कच्चे शेल कोड की तरह दिखती है।
 – 
chepner
31 जिंदा 2017, 04:53
@chepner, हाँ, एक कैपिस्ट्रानो परिनियोजन स्क्रिप्ट है, जो एक कच्चे शेल कोड का उत्पादन करती है!
 – 
japoowf
31 जिंदा 2017, 04:59

1 उत्तर

सबसे बढ़िया उत्तर

मैं अनुमान लगा रहा हूं, लेकिन जो मैं बता सकता हूं उसमें pids_path शून्य है। आपकी कैपिस्ट्रानो लिपि में यह है:

mkdir -p #{pids_path} && chown -R #{user}:#{group} #{pids_path} && chmod +rw #{pids_path}

और अगर यह इसमें बदल रहा है:

Mkdir -p && chown -R ubuntu: && chmod + rw

तब आप देख सकते हैं कि शेल स्क्रिप्ट mkdir -p के बाद और && से पहले आने की उम्मीद कर रही थी और फिर भी कुछ भी नहीं है।

संयोग से, इसका मतलब है कि आप अपने खोल को "कुछ भी नहीं नामक निर्देशिका बनाने" के लिए कह रहे हैं, यही कारण है कि यह असफल रहा है

1
Taryn East 31 जिंदा 2017, 04:57
1
समूह भी खाली प्रतीत होता है।
 – 
Dave Newton
31 जिंदा 2017, 05:00