2011-01-21 16 views
19

Harici bir uygulama (yani, & 'Not Defteri') 'u aramalı ve ardından çağrılan uygulamanın işlem kimliğini almam gerekir.PowerShell - çağrılan uygulamanın işlem kimliğini al

al-Süreç Notepad = Tüm Notepad dönecektir

ben böyle bir şey yapmak istiyorum işler:

$app = Start-Process notepad -passthru 
Wait-Process $app.Id 

cevap

37

kullanın Start-Process :

# Starts Notepad and returns the ID 
(Start-Process Notepad -passthru).ID 
+0

Passthru nedir? –

+2

@JohnDemetriou Start-Process'e proses nesnesini boru hattına (yani "boru hattından geçirmek için") çıkmasını söyler. – zdan

1

Daha özlü: Böyle -PassThru argümanı ile

$objApp = & 'c:\Notepad.exe' 

WHILE (get-process -ID $objApp.id | select -property Responding) { 
    Start-Sleep -s 10 
    Echo "STILL WAITING" 
} 
Echo "Done!!"