2011-05-17 20 views
30

Bir PS komut dosyası yazdım ve tanı amaçlı olarak Write-Host kullanarak görüntülenen iletileri yankılamıyorum. Bu sürece benYazma-üye veya çift tırnak içinde üye değişkenleri nasıl genişletilir?

Write-Host "Hello World, $name"

Problem gibi normal değişken genişletmek zorunda olduğu gayet i

Write-Host "Hello World, $Person.Name" 

aşağıda Bu şekilde genişletmek değil gibi bazı üye değişkeni yankı çalıştığınızda başlar beklenen. takip ediyorum etrafında çalışma sıcaklığı değişkenin kullanımı dışında olan bunu yapmanın zarif bir yolu var mı

$personName = $Person.Name 
Write-Host "Hello World, $personName" 

aşağıdaki gibi geçici değişkeni kullanımı, nedir?

cevap

42

Eğer çift tırnakla içinde mülkiyet erişimini kullanmak istiyorsanız, bir alt ifade gerekir:

"Foo $($bar.Property)" 
0

bu deneyin:

$dir = ls 
Write-Host "Dir elements:" $dir.Length 
+0

Bu işler ancak alıntı – JeeZ

+1

İn ile genişleyen arıyorum Bu yaklaşımla ilgili problem şudur: Yazma-Çıktısı olarak değiştirirseniz ve bir dosyaya yönlendirirseniz, metin iki çıkış hattına bölünür. Kabul edilen cevap bu problemden kaçınır. –

İlgili konular