1

いくつかの一般的な変数を含むバッチ ファイルを作成し、このスクリプトを他のスクリプトに含めて、変数がそこに表示されるようにすることは可能ですか?

これに対する一般的なアプローチは何ですか?

4

3 に答える 3

2

簡単に言えば、「共有」値を確認する必要があるスクリプト内で

CALL yourbatchthatsetsthecommonvariables.bat

ただし、これらの変数への変更は特定のCMDインスタンスに分離されます。インスタンス間で伝達されることはありません。

ANDこれによってインスタンスに対して返される値はCOMMON.BAT、現在のインスタンスに関連するものになります。

だから:あなたが持っていると仮定しますCOMMON.BAT

set mytime=%time%
set myval=abc123

次にインスタンス 1... またはインスタンス 2

...
call COMMON.BAT
...

に設定myvalabc123ますがmytime、それぞれが呼び出した時間に設定しますCOMMON.BAT

于 2013-03-16T17:27:05.580 に答える
1

これを試してください(最初のスクリプトで):

set>variables.txt

..そして2番目のスクリプトで:

for /f "delims=" %%i in (variables.txt) do set %%i

編集:一連の変数(最初のファイル)に対してこれを行うには:

::define some variables
set "_myvar1=value1"
set "_myvar2=value2"
set "_myvar3=value3"
::save them to a text file
set _myvar>variables.txt

_myvarこれにより、テキストファイルに向かうすべての変数が保存されます。2番目のスクリプトのコードは変更されません。

于 2013-03-16T16:52:57.240 に答える
1

もちろん、これもかなり一般的です。

あなたの変数を としましょうconfig.bat

set PATH=c:\opt\tools\jdk1.6;%PATH%
set CLASSPATH=c:\opt\projects\myproject\jars;%CLASSPATH%

次に、たとえばstart-dev.bat次のことができます。

call common.bat
javaw -cp %CLASSPATH% -Denv=dev

そしてstart-prod.bat

call common.bat
javaw -cp %CLASSPATH% -Denv=prod
于 2013-03-16T18:52:26.867 に答える