2013-01-24 16 views
20

हमारे रिमोट सिस्टम mkdir -p $directory निर्देशिका में मौजूद होने पर विफल रहता है। निर्देशिका नहीं बना सकते '$ निर्देशिका': जो इसेmkdir -p विफल रहता है जब निर्देशिका मौजूद होती है

mkdir से पता चलता मतलब है फ़ाइल मौजूद

यह वास्तव में, puzzling के रूप में मैं -p का अनुबंध है कि हमेशा सफल रहा है किया गया था जब निर्देशिका पहले से मौजूद माना जाता है । और यह मैंने कोशिश की अन्य प्रणालियों पर काम करता है।

इन सभी प्रणालियों पर test उपयोगकर्ता और directory=/home/test/tmp है।

उत्तर

25

यह तब हो सकता है जब निर्देशिका में स्थित एक ही नाम से फ़ाइल हो।

संपादित करें: ध्यान दें कि निर्देशिका में लिनक्स मशीनों पर एक ही नाम से फ़ाइल और फ़ोल्डर दोनों नहीं हो सकते हैं।

+1

वही है जो वास्तव में था और मैं वर्तमान में हमारी स्क्रिप्ट की समीक्षा और फिक्सिंग कर रहा हूं – UmNyobe

+1

यह निराशाजनक नोट है ( – SET

5

यह देखने के लिए जांचें कि क्या कोई फ़ाइल (निर्देशिका नहीं है) एक नाम के साथ $ निर्देशिका है।

2

mkdir -p निर्देशिका बना नहीं देगा यदि एक ही नाम वाली फ़ाइल एक ही निर्देशिका में मौजूद है। अन्यथा यह उम्मीद के रूप में काम करेगा।