NÃO MEU CÓDIGO!
set T=%TEMP%\sthUnique.tmp
wmic process where (Name="WMIC.exe" AND CommandLine LIKE "%%%TIME%%%") get ParentProcessId /value | find "ParentProcessId" >%T%
set /P A=<%T%
set PID=%A:~16%
O PID do processo atual é armazenado na variável PID
.
Eu não lembro quem fez isso, mas funciona. Provavelmente há algum código desnecessário, mas não consigo desconstruí-lo.