Puedes usar los Tokens que permite For /F, es decir, cortar en trozos la salida de un comando mediante un caracter (en este caso el la Coma y el Espacio) y luego solo tomar los trozos que uno necesite:
Código
@Echo Off 'Reg Query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems" /V Windows' )
Lo cual devuelve:
Citar
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,20480,2048 Windows=On SubSystemType=Windows
ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=sxssrv,4 ProfileControl=Off MaxRequestThrea
ds=16
ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=sxssrv,4 ProfileControl=Off MaxRequestThrea
ds=16
---
Teniendo en cuenta que los Tokens completos serían
+-------------------------------------------------------------+--------------------+
| 1 | 2 |
+-------------------------------------------------------------+--------------------+
| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session | Manager\SubSystems |
+-------------------------------------------------------------+--------------------+
| Windows | REG_EXPAND_SZ |
+-------------------------------------------------------------+--------------------+
+---------------------------------+--------------------------+--------------------+
| 3 | 4 | 5 |
+---------------------------------+--------------------------+--------------------+
| | | |
+---------------------------------+--------------------------+--------------------+
| %SystemRoot%\system32\csrss.exe | ObjectDirectory=\Windows | SharedSection=1024 |
+---------------------------------+--------------------------+--------------------+
+-------+-----+------------+
| 6 | 7 | 8 |
+-------+-----+------------+
| | | |
+-------+-----+------------+
| 20480 | 768 | Windows=On |
+-------+-----+------------+
+-------------------------------------------------------------------------------------------------------
| *
+-------------------------------------------------------------------------------------------------------
|
+-------------------------------------------------------------------------------------------------------
| SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=sxssrv,4 ProfileControl=Off MaxRequestThreads=16
+-------------------------------------------------------------------------------------------------------
La primera línea se pierde (obvia) porque no tiene el token 3
Para que haga la modificación en el Registro debes cambiar el Echo por un Reg Add así:
Código
@Echo Off 'Reg Query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems" /V Windows' Reg Add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems" /V Windows /T REG_EXPAND_SZ /D "%%a %%b %%c,%%d,2048 %%e %%f" /F )
También recuerda que como se está modificando un valor de HKLM será necesario ejecutar el Script con permisos de Administrador