2011-08-04 15 views
13

Bir powershell komut dosyası kullanarak bir ağ sürücüsünde yeni bir dizin oluşturmak çalışıyorum ama banaPowershell Yeni-Ürün: Onay Kabul Nasıl otomatik

"Onayla isteyen tutar: Eğer istediğinden emin misin Bu eylemi gerçekleştirin .... "

Bu komut dosyasını geçersiz kılmanın bir yolu var, bu yüzden bu komut dosyasını bir web arayüzünden çalıştırdığımdan beri sormuyor. İşte

benim kararım:

New-Item $rollbackDirectory -type Directory -Force 

Ben de hiçbir şans

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

cevap

16

-confirm sadece cmdlet'in onay için size sormasını istediğinizde belirtilmelidir. Cmdlet'in kendiliğinden teyit edilip edilmeyeceği, cmdlet'in etkisine göre yüksek, orta, düşük ayarlayabilen cmdlet'in geliştiricisine bağlıdır. $ConfirmPreference'un değerine bağlı olarak teyit için bir cmdlet'i otomatik olarak alacaksınız. $ConfirmPreference için varsayılan değer yüksektir ve New-Item için ayarlanan ortam orta düzeydedir. Bu nedenle, New-Item onay istiyorsa, $ConfirmPreference değeri orta veya düşük olarak değiştirilmiş olmalıdır. o $ConfirmPreference="high" hatta $ConfirmPreference="none" kullanılarak

Değişim New-Item istemez yapmak veya -confirm:$false uygun çözümdür $ConfirmPreference geçersiz kılarak iyi çalışır.

mükemmel burada Açıklaması: Bu o kadar temizler http://blogs.msdn.com/b/powershell/archive/2006/12/15/confirmpreference.aspx

Umut.

+1

Bağlantı için teşekkürler. Bu kesinlikle bilgilendirici oldu! –

9

Birlikte bu formatı denedim

veya -Force parametre olmadan, aynı şeyi yapar (Bu doğru değil başka bir SO yazı üzerinde okudum olsa bile) bunu denedim sona erdi:

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

Ve işe yaradı! Umarım bu aynı sorunu olan diğer kişilere yardımcı olur.

+1

'-Confirm: $ false 'bunu cmdlet düzeyinde yapmak için mükemmel bir yoldur. Ayrıca, cevabımı gör. – manojlds