ローカル コンピューター上の 1 つ以上のプロセスを開始します。

構文

Start-Process [-FilePath] <string> [[-ArgumentList] <string[]>] [-Credential <PSCredential>] [-LoadUserProfile] [-NoNewWindow] [-PassThru] [-RedirectStandardError <string>] [-RedirectStandardInput <string>] [-RedirectStandardOutput <string>] [-UseNewEnvironment] [-Wait] [-WorkingDirectory <string>] [<CommonParameters>]

Start-Process [-FilePath] <string> [[-ArgumentList] <string[]>] [-PassThru] [-Verb <string>] [-Wait] [-WindowStyle {<Normal> | <Hidden> | <Minimized> | <Maximized>}] [-WorkingDirectory <string>] [<CommonParameters>]

説明

ローカル コンピューター上の 1 つ以上のプロセスを開始します。プロセスで実行されるプログラムを指定するには、実行可能ファイルやスクリプト ファイル、またはコンピューター上のプログラムで開くことができるファイルの名前を入力します。実行可能ファイル以外のファイルを指定すると、Start-Process は Invoke-Item コマンドレットと同様に、ファイルに関連付けられているプログラムを開始します。

Start-Process のパラメーターを使用すると、ユーザー プロファイルの読み込み、新しいウィンドウでのプロセスの開始、代替資格情報の使用などのオプションを指定できます。

パラメーター

-ArgumentList <string[]>

プロセスを開始するときに使用するパラメーターまたはパラメーター値を指定します。パラメーター名 ("Arguments") は省略可能です。

必須

false

位置

2

既定値

なし

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Credential <PSCredential>

この処理を実行するアクセス許可を持つユーザー アカウントを指定します。"User01" や "Domain01\User01" のようなユーザー名を入力するか、Get-Credential コマンドレットで生成されるような PSCredential オブジェクトを入力します。既定では、コマンドレットは現在のユーザーの資格情報を使用します。

必須

false

位置

named

既定値

Current user.

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-FilePath <string>

プロセスで実行されるプログラムのパス (省略可能) とファイル名を指定します。.txt、.doc ファイルなど、コンピューター上のプログラムに関連付けられている実行可能ファイルまたはドキュメントの名前を入力します。このパラメーターは必須です。

ファイル名のみを指定する場合は、WorkingDirectory パラメーターを使用してパスを指定します。

必須

true

位置

1

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-LoadUserProfile

現在のユーザーの HKEY_USERS レジストリ キーに格納されている Windows ユーザー プロファイルを読み込みます。既定値は FALSE です。

このパラメーターは Windows PowerShell プロファイルには影響しません。「about_Profiles」を参照してください。

必須

false

位置

named

既定値

False

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-NoNewWindow

新しいウィンドウでプロセスを実行しないようにします。既定では、プロセスは新しいウィンドウで実行されます。

必須

false

位置

named

既定値

False

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-PassThru

コマンドレットが開始した各プロセスのプロセス オブジェクトを返します。既定では、このコマンドレットによる出力はありません。

必須

false

位置

named

既定値

False

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-RedirectStandardError <string>

プロセスによって生成されたエラーを指定したファイルに送信します。パスとファイル名を入力します。既定では、エラーはコンソールに表示されます。

必須

false

位置

named

既定値

Errors are displayed in the console

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-RedirectStandardInput <string>

指定したファイルから入力を読み取ります。入力ファイルのパスとファイル名を入力します。既定では、入力はキーボードから取得されます。

必須

false

位置

named

既定値

Keyboard

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-RedirectStandardOutput <string>

プロセスによって生成された出力を指定したファイルに送信します。パスとファイル名を入力します。既定では、出力はコンソールに表示されます。

必須

false

位置

named

既定値

FALSE

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-UseNewEnvironment

プロセスに指定された新しい環境変数を使用します。既定では、開始されたプロセスはコンピューターとユーザーに指定された環境変数を使用して実行されます。

必須

false

位置

named

既定値

False

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Verb <string>

Edit、Open、Print など、プロセスを開始するときに使用する動詞を指定します。

ファイルの種類ごとに、使用できる一連の動詞があります。プロセスで使用できる動詞を検索するには、オブジェクトの Verbs プロパティを使用します。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Wait

指定したプロセスが完了するまで、次の入力を受け取るのを待ちます。このパラメーターはコマンド プロンプトを表示しないか、プロセスが完了するまでウィンドウをそのまま維持します。

必須

false

位置

named

既定値

False

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-WindowStyle <ProcessWindowStyle>

プロセスに使用するウィンドウの状態を指定します。有効な値は、Normal、Hidden、Minimized、および Maximized です。既定値は Normal です。

必須

false

位置

named

既定値

Normal

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-WorkingDirectory <string>

プロセスで実行される実行可能ファイルまたはドキュメントの場所を指定します。既定値は現在のディレクトリです。

必須

false

位置

named

既定値

Current directory

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

<CommonParameters>

このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.

入力と出力

入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。

入力

なし

パイプを使用して入力を Start-Process に渡すことはできません。

出力

なし、または System.Diagnostics.Process

Start-Process で PassThru パラメーターを使用すると、System.Diagnostics.Process が生成されます。それ以外の場合、このコマンドレットによる戻り値はありません。

このコマンドレットは、System.Diagnostics.Process クラスの Start メソッドを使用することによって実行されます。このメソッドの詳細については、MSDN ライブラリの「Process.Start メソッド」(http://msdn.microsoft.com/ja-jp/library/system.diagnostics.process.start(VS.80).aspx) を参照してください。

例 1

C:\PS>start-process sort.exe

説明
-----------
このコマンドを実行すると、現在のディレクトリにある Sort.exe ファイルを使用するプロセスが開始されます。このコマンドは、既定のウィンドウ スタイル、作業ディレクトリ、資格情報など、既定値をすべて使用します。






例 2

C:\PS>start-process myfile.txt -workingdirectory "C:\PS-Test" -verb Print

説明
-----------
このコマンドを実行すると、C:\PS-Test\MyFile.txt ファイルを印刷するプロセスが開始されます。






例 3

C:\PS>start-process Sort.exe -RedirectStandardInput Testsort.txt -RedirectStandardOutput Sorted.txt -RedirectStandardError SortError.txt -UseNewEnvironment

説明
-----------
このコマンドを実行すると、Testsort.txt ファイルの項目を並べ替えて、並べ替えた項目を Sorted.txt ファイルで返すプロセスが開始されます。エラーがあれば、SortError.txt ファイルに書き込まれます。

UseNewEnvironment パラメーターは、プロセスが独自の環境変数で実行されるように指定します。






例 4

C:\PS>start-process notepad -wait -windowstyle Maximized

説明
-----------
このコマンドを実行すると、Notepad プロセスが開始されます。ウィンドウが最大化されて、プロセスが完了するまでそのまま維持されます。






関連項目




目次