2009-05-13 6 views
29

que necesitan hacer un .bat para DOS que haga lo siguiente:variables de concatenar

set ROOT = c:\programas\ 
set SRC_ROOT = (I want to put the ROOT Here)System\Source 

así que después de definir RAÍZ Quiero tener SRC_ROOT = c: \ Programas \ System \ Fuente

¿Cómo puede ¿Yo hago eso?

Respuesta

50

conjunto root = c: \ programas conjunto SRC_ROOT =% ROOT% \ System \ Fuente

Por cierto, ¿cuál es el significado de la | después de la RAÍZ? ¿Un error?

Gregoire

EDIT: sin espacios

set ROOT=c:\programs 
set SRC_ROOT=%ROOT%\System\Source 
+0

sí ... es un mal escrito ... Lo que escribiste fue lo primero que he intentado ... No funciona ... si echo un eco a SRC_ROOT solo \ system | source aparece – UcanDoIt

+0

, de hecho, los espacios entre = no son necesarios, intente: establezca ROOT = c: \ programs establezca SRC_ROOT =% ROOT% \ System \ Source – podosta

+0

doenst work: S – UcanDoIt

6

Tenga en cuenta que si se necesitan espacios a continuación entre comillas son necesarias en la definición y deben ser cortados, mientras que la concatenación:

rem The retail files set 
set FILES_SET="(*.exe *.dll" 

rem The debug extras files set 
set DEBUG_EXTRA=" *.pdb" 

rem Build the DEBUG set without any 
set FILES_SET=%FILES_SET:~1,-1%%DEBUG_EXTRA:~1,-1% 

rem Append the closing bracket 
set FILES_SET=%FILES_SET%) 

echo %FILES_SET% 

Saludos ...