2016年11月29日

【PowerShell】プロセスを開始する



プロセスを開始させるには、Start-Processを使います。

構文
Start-Process -FilePath [ファイル名]


まず、一番単純な例です。
PS C:\> Start-Process -FilePath "notepad.exe"
-FilePathに「notepad.exe」を指定してメモ帳を起動しています。
ちなみにnotepad.exeはダブルコーテーションで括らなくても大丈夫です。

あと、指定するファイル名は実行ファイルじゃなくても大丈夫です。

たとえば「test.log」というテキストファイルを指定したとします。
もし、この「log」という拡張子にメモ帳が関連付けられていた場合、ちゃんとメモ帳が起動して「test.log」を開いてくれます。



次に、最大化されたウィンドウでプロセスを開始する方法です。
PS C:\> Start-Process -FilePath "notepad" -WindowStyle Maximized
-WindowStyleパラメータで「Maximized」を指定します。


-Verb

管理者として実行するには下記のようにします。
PS C:\> Start-Process -FilePath "powershell" -Verb runAs

また、-Verbを使って印刷も出来ます。
PS C:\> Start-Process -FilePath "test.log" -Verb Print


-Wait

プロセスの終了を待つ
PS C:\> Start-Process -FilePath "notepad" -Wait
「-Wait」パラメータを指定することにより起動したプロセスが終了するまでプロンプトの操作はできなくなります。


-WorkingDirectory

PS C:\> Start-Process -FilePath "test.pdf" -WorkingDirectory "C:\work"
「-WorkingDirectory」パラメータは、作業場所となるディレクトリを指定することにより、そのディレクトリにあるファイルを実行することができます。


<関連記事>
【PowerShell】プロセスの停止を待つ
【PowerShell】プロセスをデバッグする
【PowerShell】実行中のプロセスを取得する
【PowerShell】実行中のプロセスを停止する
【PowerShell】サービスを開始する


スポンサーリンク