2017年9月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
無料ブログはココログ

« バッチファイルで、dllのアイコンをインデックスで一覧表示する。 | トップページ | バッチファイルでコンソールウィンドウのタイトルを取得する。 »

2009年1月25日 (日)

バッチファイルでプロセスIDを取得する。

tasklist.exeを使って、コンソールウィンドウの所有プロセスのプロセスIDを調べます。

GetPID.CMD

@echo off
for /f "tokens=2 delims=," %%i in ('title @@@^&tasklist /v /fo csv /nh /fi "windowtitle eq @@@"') do echo %%~i

厳密には、コンソールウィンドウの所有プロセスは、そのバッチファイルを実行中のシェルプロセスとは限りません。その親や御先祖かも知れません。

コンソールウィンドウのタイトルを一時的に変えて、そのタイトルのウィンドウの所有プロセスのプロセスIDを調べます。
サブシェルでタイトルを変えた場合は、元のタイトルに戻ります。

« バッチファイルで、dllのアイコンをインデックスで一覧表示する。 | トップページ | バッチファイルでコンソールウィンドウのタイトルを取得する。 »