Zorunlu parametre ekranını kullanırsam hatalı bir sonuç döndüren aşağıdaki ayarları içeren bir komut dosyası var. Benim girişimde bir tür tip doğrulama ya da döküm yapmama gibi hissettiriyor. Bunu nasıl çözebilirim?Powershell zorunlu bool her zaman true
param ([Parameter(Mandatory=$true)] [bool]$autoinstall)
if ($autoinstall )
{
echo "Autoinstall true"
}
else
{
echo "Autoinstall false"
}
Bu Birlikte dersek mükemmel çalışıyor. \ Myscript.ps1 -autoinstall $ yanlış ama $ autoinstall değişken olursa olsun ben '$ false' zorunlu şifre istemini kullanın ve girersem geçmesi ne zaman doğrudur .
DÜZENLEME: Benim için çalışmayan bir anahtarın kullanılması
. Ben gerçekten bu uçmak kullanımı için kullanıcı kısayolları için hem betik hem de zorunlu parametre fonksiyonu olması gerekir.
Bu benim için çalışmaz - Uygulamanın davranışını denetlemek için zorunlu parametrelerden oluşan bir koleksiyon kullanan tek bir kısayolu dışarı çıkarmam gerekiyor. Gönderinin orijinal sürümüne not düştüm .. Onu tekrar düzenleyeceğim. –
Bugün biraz aptal hissediyorum, çünkü sorunu anlayamıyorum :) Bir anahtar zorunlu bir boole. Ya siz belirtiyorsunuz ya da yapmıyorsunuz ve bir senaryoda onun değerini belirtebilirsiniz. Anahtar gözlerimde mükemmel. Kavram kanıtı için cevabımdaki güncellenmiş çıktı bölümüne bakın. –
Betiğin, kısayolda bulunan diğer komut satırı parametrelerine bakılmaksızın çağrılabilmesi ve bir değer girişine sahip olmak için zorunlu parametre ekranından bilgi alması gerekir. Komut dosyanızı anahtar için zorunlu bir param ile deneyin ve komut satırında bir değer girmeyin. Ne hakkında konuştuğumu göreceksin. –