2014-02-26 37 views
0

我使用名爲「exiftool」的工具來從視頻文件中讀取用於列表/分類的元數據信息。 Exiftool輸出是這樣的。批量刪除「輸入」字符?

1920x1080 
2:58:09 
12421 MB 

我想要的是;

[1920x1080][2:58:09][12421 MB] 

這就是我想要去除「輸入」字符;

:_Dongu2 
set GELEN=%~1 
set /a SAYAC2+=1 
if %SAYAC2% LEQ 99 (
    if %SAYAC2% LEQ 9 (
    title Ilerleme Durumu: 00%SAYAC2%/%FSAY% 
) else (
    title Ilerleme Durumu: 0%SAYAC2%/%FSAY% 
) 
) else (
    title Ilerleme Durumu: %SAYAC2%/%FSAY% 
) 

setlocal DisableDelayedExpansion 
set "firstLineReady=" 
(
    for /F "eol=$ delims=" %%a in ('exiftool -s3 -ImageSize -Duration -FileSize "%~1\%GELEN:~20,-23%.mp4"') DO (
     if defined firstLineReady (echo() 
     set "firstLineReady=1" 
     <nul set /p "=%%a" 
    ) 
)>> out.txt 
goto :EOF 

到目前爲止我沒有解決。在另一個問題上,我從Jeb's answer找到了這個函數。這是我調用這個函數

(for /f "tokens=*" %%x in (%MTEMP%) do call :_Dongu2 "%%x") && title %NAME% 

%MTEMP%文件就像

Z:\Movies\000y.001y\The.Lord.of.the.Rings.The.Fellowship.of.the.Ring.(2001){0120737}[00085] 
Z:\Movies\000y.001y\The.Lord.of.the.Rings.The.Return.of.the.King.(2003){0167260}[00087] 
Z:\Movies\000y.001y\The.Lord.of.the.Rings.The.Two.Towers.(2002){0167261}[00086] 

每個電影的態度必須是另一條線路上的方式。 out.txt必須像;

[1920x1080][2:58:09][12421 MB][The.Lord.of.the.Rings.The.Fellowship.of.the.Ring] 
[1920x1080][3:02:31][14660 MB][The.Lord.of.the.Rings.The.Return.of.the.King] 
. 
. 
. 

回答

1

這裏有一個批次的解決方案:

@echo off 
<"file.txt" (
set /p a= 
set /p b= 
set /p c= 
) 
echo [%a%][%b%][%c%] 

輸出:

[1920x1080][2:58:09][12421 MB] 
+0

作品艾克一個魅力...謝謝。 –

+0

這是我第一次想到,只要我到達'我想要的東西'位! –

1

直接問exiftool產生所需的輸出

exiftool -p [${ImageSize}][${Duration}][${FileSize}] videoFile.mp4 
+0

你的方式是更好,但我正在尋找一個foxidrive說。 –