2011-12-07 12 views
1

c:> startup.bat -Dsun.langのようなコマンドライン引数を渡して、バッチファイル(tomcatのstartup.bat)を起動したいとします。 ClassLoader.allowArraySyntax = true"="を含むバッチファイルにコマンドライン引数を送る方法

"="記号はスペースで置き換えられています。 私は、c:> startup.bat -D "sun.lang.ClassLoader.allowArraySyntax = true"と入力すると、値が正しく設定されていませんでした。

私は、Windows 7に

を使用しています「=」を含むコマンドライン引数を渡すためにとにかくはありますか?

おかげで、あなたはそれについてはあなたが渡している正確にどのように多くのパラメータを知っている場合にのみ機能します%1=%2に変更%1除く内部バッチファイルを、多くを行うことはできません シヴァ

答えて

1

、または彼らは常に彼らがペアで来ることを知っています。 (私はあなたがループ可能性があり、次のパラメータと一緒に-Dxxxパラメータのすべてを入れて、大手-Dないものを置くとしていますが、他の=スタイルのパラメータを持っている場合、それは本当に厄介取得することができます。)

しかし、あなたがすることができます引用符であなたのパラメータを置くことによって、バッチファイル外で何かを行います

startup "-Dsun.lang.ClassLoader.allowArraySyntax=true" 
0

あなたはすべてのパラメータに%*を使用することができます。あなたのバッチで

@echo off 
javac %* 

それとも、あなたの完全なパラメータ startup.bat "-Dsun.lang.ClassLoader.allowArraySyntax=true"

をenquoteできるとのstartup.batが

@echo off 
javac %~1 
(%1からの引用を囲む%〜1つの除去)のように見えます
関連する問題