2016-03-30 22 views
0

Bu çıkıştaki ilk satırı (Ad) yalnızca powershell'de nasıl seçebilirim? OutputÇıkıştan yalnızca ilk satırı seç

Kod bu biridir: Ben bu listeden sadece isimleri var istiyorum

1. Import-Module "C:\CMI\Entwicklung\MetaTool\packages\psake.4.5.0\tools\psake.psm1" 
2. invoke-psake -buildFile "C:\CMI\Entwicklung\MetaTool\Build\default.ps1" -docs; 

.

Teşekkür ederiz!

cevap

0

Boru Çıktı-nesneyi seçmek için:

Import-Module "C:\CMI\Entwicklung\MetaTool\packages\psake.4.5.0\tools\psake.psm1" 
invoke-psake -buildFile "C:\CMI\Entwicklung\MetaTool\Build\default.ps1" -docs | select Name 

Düzenleme

$a = Invoke-psake default.ps1 

$a 
psake version 4.6.0 
Copyright (c) 2010-2014 James Kovacs & Contributors 

Executing Clean 
Executed Clean! 
Executing Compile 
Executed Compile! 
Executing Test 
Executed Test! 

Build Succeeded! 

---------------------------------------------------------------------- 
Build Time Report 
---------------------------------------------------------------------- 
Name Duration   
---- --------   
Clean 00:00:00.0193100 
Compile 00:00:00.0148280 
Test 00:00:00.0169533 
Total: 00:00:00.1112917 


$b=($a | select-string ":").count-1; ($a | Select-String ":") -replace "\d{2}\:\d{2}:\d{2}.\d{7}"| select -First $b 
Clean 
Compile 
Test  
+0

ben bu çalıştı ama çalışmıyor. Çıktı boş (sadece Başlık) ... –

+0

Çıktısı bir varlığa atayın ve ist türünü alın: '$ a = invoke .....; $ a.gettype() 'Bu size bir fikir verecektir, ne tür bir yazı tipi ve seçim ifadelerini kullanabilirsek. – Martin

+0

Var, bir System.Array'dir. Burada dizi her değerden türleri şunlardır: 1 + 2 = Microsoft.PowerShell.Commands.Internal.Format.StartData 3-9 = Microsoft.PowerShell.Commands.Internal.Format.PacketInfoData –