2011-08-04 9 views
13

मैं एक powershell स्क्रिप्ट का उपयोग कर नेटवर्क डिस्क पर एक नया निर्देशिका बनाने के लिए कोशिश कर रहा हूँ, लेकिन यह मुझेPowershell नई मद: पुष्टिकरण स्वीकार कैसे स्वचालित रूप से

"पुष्टि उत्साह रहता है: क्या आप वाकई चाहते हैं इस क्रिया को निष्पादित करें .... "

क्या इसे ओवरराइड करने का कोई तरीका है इसलिए यह मुझसे नहीं पूछता क्योंकि मैं इस स्क्रिप्ट को वेब इंटरफ़ेस से चला रहा हूं।

यहाँ मेरी कॉल है:

New-Item $rollbackDirectory -type Directory -Force 

यह

मैं भी कोई भाग्य

New-Item -name $rollbackName -itemtype directory -path $rollbackdrive -Debug -Force 

उत्तर

16

-confirm केवल तभी निर्दिष्ट किया जाना चाहिए जब आप cmdlet को पुष्टि के लिए संकेत दें। चाहे cmdlet स्वयं पुष्टि के लिए संकेत देगा या नहीं, cmdlet के डेवलपर पर निर्भर करता है जो इसके प्रभाव के आधार पर cmdlet के लिए उच्च, मध्यम, निम्न सेट कर सकता है। $ConfirmPreference के मूल्य के आधार पर आपको एक cmdlet के लिए स्वचालित रूप से पुष्टिकरण प्राप्त होगा। $ConfirmPreference के लिए डिफ़ॉल्ट मान उच्च है और New-Item के लिए स्तर सेट मध्यम है। इसलिए यदि New-Item पुष्टिकरण के लिए संकेत दे रहा है, तो $ConfirmPreference मान को मध्यम या निम्न में बदला जाना चाहिए। New-Item संकेत नहीं बनाने के लिए

बदलें यह $ConfirmPreference="high" या यहाँ तक कि $ConfirmPreference="none" का उपयोग कर, या -confirm:$false के अपने समाधान $ConfirmPreference अधिभावी द्वारा रूप में अच्छी तरह से काम करता है।

पूरी तरह से यहां बताई गई है: http://blogs.msdn.com/b/powershell/archive/2006/12/15/confirmpreference.aspx

आशा यह साफ करता है अप।

+1

लिंक के लिए धन्यवाद। वह निश्चित रूप से जानकारीपूर्ण था! –

9

मैं के साथ इस प्रारूप की कोशिश की है के साथ या -Force पैरामीटर के बिना, एक ही बात करता है यह कोशिश कर समाप्त हो गया (भले ही मैंने एक और एसओ पोस्ट पर पढ़ा कि यह सही नहीं है):

New-Item $rollbackDirectory -type Directory -Force -Confirm:$false 

और यह काम किया! उम्मीद है कि यह अन्य मुद्दों को

+1

'-कॉन्फर्म: $ false' cmdlet स्तर पर ऐसा करने के लिए पूरी तरह से वैध तरीका है। इसके अलावा, मेरा जवाब देखें। – manojlds

संबंधित मुद्दे