2017-08-11 8 views
0

私はそのファイルにファイル名&の数を与えるバッチファイルを持っています。 .txtファイルでは正常に動作しますが、.meaファイルの数をチェックしようとしていますが、不正なカウントが表示されます。 (非常に大きな数を示しています)。以下のコードは、正しく.meaファイルを読むために任意の修正を提案してください:.meaファイルの数を取得するためのバッチファイル

@echo off 


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

    echo %%n : %%g 
) 
)) >output.txt 
+1

は、バイナリ形式ですか? – npocmaka

+0

このファイルはMalvernというソフトウェアで作成されています。それはPDFファイルとしてそのソフトウェアで開き、.txtとして保存することができますが、私は.meaのために直接コマンドを実行する必要があります。 – Jay

+0

ソフトウェアによって生成されたそのファイルに関するさらなる研究では、その形式が "Evotec Flex" – Jay

答えて

0

ほとんどの場合、あなたの.meaファイルには理解されるようにFindによって理解されるようなラインターミネータがターミネータとして考慮されていないバイナリ型のファイルです。 (...本物.meaファイルを使用せずに、我々はあなたがそれを確認助けることができない調べるため)

私はあなたが、少なくともさらに、あなたのコード改善できることが考える:

を...単一のディレクトリ

@Echo Off 
( For /F "Tokens=1* Delims=- " %%A In ('Find/V /C "" *.* 2^>Nul' 
    ) Do Echo=%%A %%B)>"SomewhereElse\Output.txt" 

...再帰

@Echo Off 
(For /R %%A In (*) Do For /F "Tokens=1* Delims=- " %%B In (
    'Find/V /C "" "%%A" 2^>Nul') Do Echo=%%B %%C)>"SomewhereElse\Output.txt" 

いずれの場合も、Output.txtSomewhereElseに書き込まれていないと、それ自体のコンテンツ内にエントリとして表示されます。

関連する問題