2009-05-13 25 views
29

Aşağıdaki anlamına DOS için .bat yapmanız gerekir:concatenate değişkenleri

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

böylece ROOT tanımlayan sonra SRC_ROOT istiyorum = c: \ Programas \ System \ Kaynak

Nasıl Ben bunu yaparım?

cevap

50

seti KÖK = c: | \ programlar =% KÖK% \ System \ Kaynak arada

seti SRC_ROOT, anlamı nedir ROOT'tan sonra mı? Yanlış yazım mı?

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% 

: Cheers

Gregoire

DÜZENLEME: boşluklar daha sonra ihtiyaç varsa tırnak işareti tanımına ihtiyaç vardır ve birleştirerek iken doğranmış gerektiğini boşluksuz

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

evet ... bu bir yanlış yazım ... Yazdığın ilk şey benim denedim ... İşe yaramıyor ... SRC_ROOT için bir eko yapsam sadece \ system | source – UcanDoIt

+0

görünür. gerek yok, deneyin: set ROOT = c: \ programlar set SRC_ROOT =% ROOT% \ System \ Kaynak – podosta

+0

doenst iş: S – UcanDoIt

6

Not ...