2017-02-08 8 views
0

特定のファイルへのパスを含むデータファイルの行を繰り返し処理し、存在するかどうかをチェックする単純なループを作成しようとしています。これは今までのコードです。この時点で変数が予期しなかった

:: read file line by line 

for /f "tokens=*" %%a in (%DATAFILEPATH%) do (
IF EXISTS %%a (
    echo FILE %a EXISTS 
) 
) 
pause 

と私は、次のエラーメッセージが表示されますが、私は理由を理解しない:事前に

%a was unexpected at this time. 

感謝を。

+4

コマンドライン '%a'バッチファイル:' %% a'。また、もし存在すれば –

+0

[Windowsコマンドプロンプトは* NOT * DOSプロンプトです!](https://scalibq.wordpress.com/2012/05/23/the-windows-command-prompt-is-not- a-dos-prompt /) – aschipfl

答えて

1

あなたは、二つの主要な問題を抱えていた最初は、複数のEXISTSであり、かつ特異%a第二は、このようにそれを試してみてください。%DATAFILEPATH%から特定の場所は/フォルダだった場合

REM read file line by line 

FOR /F "TOKENS=*" %%a IN (%DATAFILEPATH%) DO (
    IF EXIST "%%~a" ECHO FILE %%a EXISTS 
) 

PAUSE 

ディレクトリを変更したら、IF行をIF EXIST "%%~a\" ECHO FOLDER %%a EXISTS

関連する問題