Bunu anlamaya çalışıyorum. Diğer makaleleri gördüm ve her şeyi denedim, ama hiçbir yere gitmiyorum. Ben başka bir PS komut dosyasına bir argüman olarak bir dizi geçirmeye çalışıyorum. $ IPArray içindeDiziyi Invoke-Command ile başka bir betiğe geçirme
$IPArray = Get-Content C:\ListofIps.txt
Invoke-Command -Computername $server -Credential $cred -FilePath "C:\script.ps1" -ArgumentList (,$IPArray)
5 değerleri ararım komut dosyasına geçirilen değildir: İşte çalıştığım şey. peşin
Sağolun çocuklar, gerçekten verebilirim herhangi bir yardım ... takdir
$ IPArray'dan önce neden bir virgülünüz var ve neden onu parantez içine alıyorsunuz? Bağımsız değişken listesi olarak $ IPArray iletmek istiyorsanız, '-ArgumentList $ IPArray' kullanın. –
Hızlı yanıt için teşekkürler, Adi. Bu konuya göre (http://stackoverflow.com/questions/7152740/how-to-pass-an-array-as-a-parameter-to-another-script), parantez ve virgül için gereklidir - ArgumentList argümanı bir dizi olarak görüntülemek için. Ancak her ikisini de denedim, ve işe yaramadı. – Sameer
script.ps1 argümanını kabul etmek için bir param() ifadesi var mı? Bunu, $ server üzerindeki bir test.ps1 dosyasına koyarak test etmeyi deneyin: param ([string [] $ IPs) $ IPS | Yazma-Çıktı Bu, en azından argümanın geçip hedef komut dosyası tarafından düzgün bir şekilde kabul edilip edilmediğini söylemelidir. – jbsmith