2013-08-16 83 views
0

在此輸入代碼我正在使用PowerShell(我剛剛接觸PowerShell)將Android程序包部署到多個設備。我使用「亞行裝置」,它的輸出看起來像這樣得到的設備列表:Powershell - 獲取Android設備的序列號

List of devices attached 
ca677f63  device 
emulator-5554 device 
<blank line> 

我想只有設備的序列號。這是我的嘗試。

1)要跳過最後一個空白行,我行號的這樣計數:

$devices=adb devices 
$lines=($devices | measure-object -Line).lines 

2)我最後的命令是這樣的:

$deviceList=$devices | select -skip 1 | select -first ($lines-1) | foreach-object { $_ -replace('device')} 

我的問題:這是最好的方式,還是有更清潔和有效的方式?

回答

1

你可以試試:

$devices=adb devices 
$devices | where {$_ -match '(.*)device$'} | % {$Matches[1]} 

我選擇用常規expession,分組需要caracters,所有的線用 '設備' 結束。