2016-08-10 8 views
1

私は単純なforループを持ち、以下のスクリプトでdirの各ファイルに対してコマンドを実行します。私はそれを実行するたびに、 "この時点ではINST_PATH \ bin \ testBin.exeが予期せぬエラーです。"forループのコマンドでenv varを展開する方法

私はenv varを拡大できないことがわかります。また、%% iの拡張に問題があるようです。

また、コマンドラインでは提供されていない変数IFにデフォルト値を与えたい場合はどうすればよいですか?例えば、ユーザーがDirを与えていない場合、私はそれを現在のディレクトリとみなしたいと思いますが、そのスクリプトでどのように行うのですか?

ご協力いただきありがとうございます。

答えて

1

二つの質問、2つの答え:バッチファイル内の

は、あなたが変数のためのための二重パーセント兆しを使用する必要があります。

for %%i in (*.*) do echo %%i 

変数が空であるかどうかを確認、デフォルト値を設定するには:

if "%1%=="" (set "dir=Z:\DefaultDir") else (set "dir=%1") 

または代替として:

set dir=%1 
if not defined dir set "dir=Z:\DefaultDir" 
関連する問題