2017-08-03 7 views
0

バッチファイルを使用して自動化しようとすると、ファイル内のファイルのレコード数がOutput.txtファイルに表示されます。ファイル名にスペースがある場合、レコード数ではなく、スペースに続くテキストを表示しますファイル名のスペースにバッチコードが機能しない

@echo off 


(
for %%n IN (*.*) do ( 
    for /F "tokens=3" %%f in ('find /V /C "-------------" "%%n"') do (

    echo %%n : %%f 
) 
)) >output.txt 

答えて

0

を使用するとトークン2を無視します。 *は「もうトークン化せずに残りをすべて取る」という意味です。

@echo off 
(
    for %%n IN (*.*) do ( 
    for /F "tokens=2 delims=:" %%f in ('find /V /C "-------------" "%%n"') do (
     echo %%n :%%f 
    ) 
) 
) >output.txt 
+0

ありがとう。これで、今度は数が与えられます – Jay

+0

ありがとうございます。これで現在カウントが行われています。 しかし、スペースを含むファイルの場合は、ファイル名:countのスペースの後にファイル名:testを出力します。ファイル名だけを取得するには? RTMCDS29_CLARUS_9_REEXTRACTION 2016.txt:2016.TXT:12678 – Jay

+0

'echo %% g'(すべての大文字のファイル名で暮らすことができる場合)または編集されたソリューションを使用します。 – Stephan

関連する問題