08/03/15 19:03:43 /rgREz5R
すいません、行き詰ってしまったので助けてください。ワイルドカードを使って
指定ディレクトリ以下から条件に合致したファイル名を選び出し、それを
環境変数にセットするという方法まではわかりました。
例)
for /f "delims=" %%A in ('dir /b "C:\temp\test AAC PID * DELAY *ms.aac"') do (
set aac_audio_source="C:\temp\%%A"
)
これを一歩進めて、ディレクトリから選び出したファイル名の中のさらに
一部分の文字列だけを選び出して環境変数にセットしたいのです。
具体的には上記の例のうち二番目のワイルドカード、msの直前にくる文字列です。
この部分はDGIndexという動画関係ソフトによって出力されたファイルのうち、音声のファイルが
映像に対してどれだけの遅延をしているかを示しているものなのですが
当然DGIndexの処理が完了するまでこの値はわかりません。
(それなりに時間がかかるのでバッチの最初の段階で処理させ、その後上記のディレクトリ検索を行う)
実際に出力されたファイルの当該箇所には三桁以下の半角英数が書かれています、加えて
その数字の前には"-"(マイナス半角)がついているケースとそうでないケースがあります。
例) -254 112
ただし半角二桁の数字は見たことがあるのですが、半角一桁や逆に半角四桁以上
が実際にファイルに書き加えられることがあるのかは未確認のためわかりません。
こうのような操作はバッチファイルで完結することは可能でしょうか?