2017-10-09 10 views
2

特定のディレクトリからすべてのファイルを取得して、各行を保存しようとしています。ディレクトリ内の各ファイルの行を保存します

for /r %%i in (C:\SECMD\Mods\modHandler\ModDir\*.txt) do (
set "file=%%i" 
(
echo %%i 
set /p Line_1= 
set /p Line_2= 
echo %Line_1% 
) <C:\SECMD\Mods\modHandler\ModDir\%file% 
) 

pause 

しかし、私がディレクトリに2を持っていても、forコマンドはファイルを検出していません。テキストファイルの例を次に示します。

C:\SECMD\Mods\modHandler\modHandler.bat 
modHandler.bat 

変数が上書きされていることがわかりましたが、この問題が修正された後にはわかります。

+0

ポスト[最小作業例](https://stackoverflow.com/help/mcve)、例えば'for ... do(echo %% i)'です。 –

+1

'/ R'オプションをつけた' FOR'コマンドのヘルプファイルを読むべきでしょう。あなたは[遅延拡張](https://ss64.com/nt)を使う必要があるので、コードブロックの中にもあります。 /delayedexpansion.html)。ファイルの内容を読みたい場合は、 'FOR/F'を使います。 – Squashman

答えて

1

あなたはこれを試みることができる:

for /F "delims=" %A in ('dir "%CD%" /b /A:-D') do (
echo %A 
) 
関連する問題