2016-05-20 9 views
1

もし私が構文を守れば、すべてが動く。ユーザにプロンプ​​トを表示するバッチコピースクリプト

xcopy source destination /e 

が、私はそれを次の方法でスクリプトを作成したいとき:

set /p src = Enter source directory: 
set /p dest = Enter destination directory: 

xcopy "%src%" "%dest%" /e 

pause 

が、それは動作しません。それは私に無効なドライブ仕様を与えます。 %のsrc%と%DEST%は、通常Cです:/ somedirectory

答えて

0

は、変数の後に空白なしで罰金作品:

set /p src=Enter source directory: 
set /p dest=Enter destination directory: 
xcopy "%src%" "%dest%" /e 

pause 
1

%src%%dest%が定義されていません。 は、と定義され、%src %%dest %です。
バッチは、空白を使用すると少しばかりです。正しい:

set /p "src=Enter source directory: " 
set /p "dest=Enter destination directory: " 

xcopy "%src%" "%dest%" /e 

pause 

=周りに不足しているスペースや引用符とそれらの位置に注意してください。
(引用符は実際には必要ではありませんが、文字列がどこで終わるかを正確に定義するのに役立ち、特殊文字の問題を回避します)

+0

ありがとうStephan、次回はもっと警戒します。私はこれを数時間試しています。再度、感謝します。 – knedlpavr

関連する問題