2016-11-01 4 views
-5

大丈夫混乱しているので、私はこのバッチコマンドを置き換え、私は

set x=12 & 
set var=(x) 
set var=%var:(=^%% 
set var=%var:)=^%% 
echo %var% 

を試してみましたが、私は、x %%

その後、私はこの

setlocal enabledelayedexpansion 

set var=!var:(=%! 

set var=!var:)=%! 

echo %var% 

と私が得る!VARを取得します:)=%!

両方の方法が失敗しましたので、私は助けが必要です。

+5

質問は何ですか? – SachaDee

+0

何をお手伝いしますか?あなたの質問を説明してください!_ – techydesigner

+0

私はvarを '%'に変換するのと同じように、%x%と同じにすることを意味します。 – Glitching247

答えて

1

次のスクリプトを考えてみて:

@ECHO OFF 
SETLOCAL EnableExtensions EnableDelayedExpansion 
echo(
set "_x=12" 
set "_var=(_x)" 
set "_var=!_var:(=%%!" 
set "_var=!_var:)=%%!" 
set _ 
echo(
    echo "  echo %%_var%%" %_var% 
call echo "call echo %%%%_var%%%%" %_var% 

その出力:変数名(代わりにxvar_x_var)で_プレフィックスが不可欠ではないことを

==> D:\bat\SO\40369895.bat 

_var=%_x% 
_x=12 

"  echo %_var%" %_x% 
"call echo %_var%" 12 

==> 

注...

関連する問題