私がやりたいのは、さまざまなビデオファイル名を含むテキストファイルから特定のビデオファイル拡張子を除外することです。たとえば、filename.txtの内容は次のとおりです。
Red.mp4
Yellow.mp4
Blue.mp4
Orange.wmv
Purple.wmv
次に、このファイルを.mp4のみで解析し、「パラメーターに」を使用して、それぞれが特定のファイルの特定のコードを含む複数の.txtファイルを作成します。言い換えれば、filename.txtの.mp4ビデオの数と同じ数のファイルを作成します私のコード
::==
@echo off
setLocal EnableDelayedExpansion
for /f "tokens=* delims= " %%a in ('type filename.txt ^|findstr ".mp4"') do (
set /a n+=1
echo >myfile!n!.txt
set v!n!=x264 --crf 23 --level 3.1 --tune film --o "%%a" "%%a.mkv"
)
set v
pause
::==
私には2つの問題があります:
- 「%%a.mkv」を適用するとファイルの名前が*.mp4.mkvになるため、%% aを変更して.mp4文字列を削除するにはどうすればよいですか。これは望ましくなく、.mp4は次のように手動で入力できます。 --o "%% a.mp4" "%% a.mkv"
必要なtxtファイルがすでに作成されている場合、変数v1、v2、v3...をそれぞれのテキストファイルに渡すにはどうすればよいですか。
echo%v!n!%>> myfile!n!.txt がループ内にありますが、機能しなかったため、plzのアドバイス