mediainfo subdirectory

Egy olyan lista érdekelne, melyben össze van gyűjtve mondjuk az avi fájlokról, hogy az adott fájlnak mi a neve, mérete, codec-e, sztereó-e stb.
Úgy vettem észre hogy ezeket az infókat a mediainfo paranccsal csak egyesével tudom kinyerni.

files="*.avi"
for i in ${files} ; do
filename=$(mediainfo --Inform=General\;%CompleteName% "${i}")
format=$(mediainfo --Inform=General\;%Format% "${i}")
filesize=$(mediainfo --Inform=General\;%FileSize/String% "${i}")
duration=$(mediainfo --Inform=General\;%Duration/String% "${i}")
aspect=$(mediainfo --Inform=Video\;%DisplayAspectRatio/String% "${i}")
codec=$(mediainfo --Inform=Video\;%CodecID/Hint% "${i}")
wh=$(mediainfo --Inform=Video\;%Width%x%Height% "${i}")
acodec=$(mediainfo --Inform=Audio\;%CodecID/Hint% "${i}")
chan=$(mediainfo --Inform=Audio\;%Channels% "${i}")
ster=$(mediainfo --Inform=Audio\;%Format_Settings_ModeExtension% "${i}")
bitrate=$(mediainfo --Inform=Audio\;%BitRate/String% "${i}")
lang=$(mediainfo --Inform=Audio\;%Language% "${i}")
echo ${filename} - ${format}, ${filesize}, ${duration}, ${aspect}, ${wh}, ${chan}, ${ster}, ${codec}, ${acodec}, ${bitrate}, ${lang} >> movie.lst
done

Ez a kis kód még működik is, de arra még nem jöttem rá, miként oldjam meg, ha az avi fájlok almappákban vannak?
Ha esetleg létezik egyszerűbb módszer azt is megköszönöm.

Hozzászólások

Csinálj egy rekurzív függvényt, s az bejárja neked az alkönyvtárakat.

Valami ilyesmire gondoltam:

#!/bin/bash

deep() {
    while read; do
        if cd "$REPLY" 2>/dev/null; then
            deep
            cd ..
            continue
        fi
        if [ -f "$REPLY" ]; then
            : # vizsgálat
        fi
    done < <(ls -1)
}

deep
exit 0

Nyilván a vizsgálatot bele kell írni.

Szerk.: Aztán vannak azok, akik tudják használni a find parancsot... :)

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Nos valamilyen oknál fogva ez 7 példányban készült el.
Igen a find. Én is próbáltam, de nem jött össze.
Az exe után nem tudok for ciklust tenni közvetlenül, így hát kiexportáltam ezt a for ciklust egy külön fájlba és úgy adtam meg. Akkor lefutott, de végtelen ciklusba került. Nem akart leállni.

find ${Movie_path} -type f -exec /home/csablak/bin/vizsgalat {} \; -print

Ez lett.
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
1 Istenek fegyverzete - 1987.avi - AVI, 705 MiB, 1h 24mn, 16:9, 640x352, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,
2 Istenek fegyverzete - 1991.avi - AVI, 704 MiB, 1h 42mn, 2.35:1, 640x272, 2, MS Stereo, DivX 3 Low, MP3, 128 Kbps,

De a find-del az eddigi legjobb eredményem ez:


find -name "*.avi" -exec mediainfo "--Inform=General;%CompleteName%/%Format%/%FileSize/String%/%Duration/String%" {} \; -exec mediainfo "--Inform=Video;%DisplayAspectRatio/String%/%CodecID/Hint%/%Width%x%Height%" {} \; -exec mediainfo "--Inform=Audio;%CodecID/Hint%/%Channels%/%Format_Settings_ModeExtension%/%BitRate/String%/%Language%" {} \;

./1 Istenek fegyverzete - 1987.avi/AVI/705 MiB/1h 24mn
16:9/DivX 3 Low/640x352
MP3/2/MS Stereo/128 Kbps/
./2 Istenek fegyverzete - 1991.avi/AVI/704 MiB/1h 42mn
2.35:1/DivX 3 Low/640x272
MP3/2/MS Stereo/128 Kbps/

Bár rakná szépen egymás mellé...

Ha vannak linkelt alkönyvtárak, netán van benne loop, akkor végtelen ciklus és végtelen memóriafoglalás is lehet belőle. Az nem lehet, hogy különböző helyeken is megvan a file?

Amúgy a megoldásom valóban lehet bugos, nem gondoltam végig. Rekurzív híváskor szerintem nem subshell hívódik - illetve nem tudom -, és akkor bizony felülíródik a REPLY értéke. Lehet, kellene használni a gömbölyű zárójelet annak érdekében, hogy subshell hívódjon. Vagy, csak simán az ls -1 kimenetét a while ciklusba pipe-olni, mert úgy biztosan önálló process, így subshell lesz a ciklus. Értelemszerűen a process helyettesítés a done után akkor nem kell.

A legegyszerűbb: a deep-en belüli deep hívást tedd gömbölyű zárójelek közé:
(deep)
Magyarázat:

read <<<alma; read <<<korte; echo "$REPLY"; echo "$REPLY"
korte
korte

read <<<alma; (read <<<korte; echo "$REPLY"); echo "$REPLY"
korte
alma

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Nos az eredmény egész meggyőző, de lehetne némely esetben jobb is. Viszont a kijövő eredmény ez:

./Horror/Csontevő - 2007.avi, AVI, 705 MiB, 1h 24mn,
16:9, XviD, 608x336,
MP3, 2, MS Stereo, 128 Kbps, ,

Ezt most jó lenne összefűznöm egy sorrá. De a buktatója ott van hogy ebből egymás alatt rengeteg van a txt fájlban.:

./Horror/Csontevő - 2007.avi, AVI, 705 MiB, 1h 24mn,
16:9, XviD, 608x336,
MP3, 2, MS Stereo, 128 Kbps, ,
./Horror/Veszélyes kívánságok - 2002.avi, AVI, 1.32 GiB, 1h 37mn,
16:9, XviD, 672x384,
, 6, CM (complete main), 448 Kbps, ,
./Horror/Halálnak halála - 2002.avi, AVI, 699 MiB, 1h 30mn,
1.905, DivX 3 Low, 640x336,
MP3, 2, MS Stereo, 128 Kbps, ,
./Horror/Az árva - 2009.avi, AVI, 1.37 GiB, 1h 57mn,
16:9, DivX 5, 608x336,
, 6, CM (complete main), 384 Kbps, ,

Vagyis minden ./ kezdődő sor az első sor, és ahhoz kell hozzáfűzni az alatta lévő még kettőt. A végeredmény ez lenne:

./Horror/Csontevő - 2007.avi, AVI, 705 MiB, 1h 24mn,16:9, XviD, 608x336,MP3, 2, MS Stereo, 128 Kbps, ,
./Horror/Veszélyes kívánságok - 2002.avi, AVI, 1.32 GiB, 1h 37mn,16:9, XviD, 672x384,, 6, CM (complete main), 448 Kbps, ,
./Horror/Halálnak halála - 2002.avi, AVI, 699 MiB, 1h 30mn,1.905, DivX 3 Low, 640x336,MP3, 2, MS Stereo, 128 Kbps, ,
./Horror/Az árva - 2009.avi, AVI, 1.37 GiB, 1h 57mn,16:9, DivX 5, 608x336,, 6, CM (complete main), 384 Kbps, ,

A vesszőkre szükség van, mivel ezek után megy a táblázatkezelőbe csv importálás útján. S remélhetőleg az egyforma adatok egymás alatt lesznek.



#!/bin/bash

find -type f -name "*.avi" \
  | while read i; do
    echo -n "$(mediainfo --Inform=General\;%CompleteName% "${i}") - "
    echo -n "$(mediainfo --Inform=General\;%Format% "${i}"),"
    echo -n "$(mediainfo --Inform=General\;%FileSize/String% "${i}"),"
    echo -n "$(mediainfo --Inform=General\;%Duration/String% "${i}"),"
    echo -n "$(mediainfo --Inform=Video\;%DisplayAspectRatio/String% "${i}"),"
    echo -n "$(mediainfo --Inform=Video\;%CodecID/Hint% "${i}"),"
    echo -n "$(mediainfo --Inform=Video\;%Width%x%Height% "${i}"),"
    echo -n "$(mediainfo --Inform=Audio\;%CodecID/Hint% "${i}"),"
    echo -n "$(mediainfo --Inform=Audio\;%Channels% "${i}"),"
    echo -n "$(mediainfo --Inform=Audio\;%Format_Settings_ModeExtension% "${i}"),"
    echo -n "$(mediainfo --Inform=Audio\;%BitRate/String% "${i}"),"
    echo -n "$(mediainfo --Inform=Audio\;%Language% "${i}"),"
    echo
done >>  movie.lst

ha tudsz phpban akkor ittvan mediainfo modul: https://github.com/mhor/php-mediainfo

igy legalabb nemkell videonkent 12szer futtatni a mediainfot

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!


desktop:/media/repository/Filmek$ cat ./list.sh 
#!/bin/bash

find -type f -name "*.avi" \
  | while read i; do
    echo $(mediainfo "${i}" | sed -n -e '/General/,/^$/s/Complete name.*: \(.*\)/\1,/p' \
                                     -e '/General/,/^$/s/Format.*: \(.*\)/\1,/p' \
                                     -e '/General/,/^$/s/File size.*: \(.*\)/\1,/p' \
                                     -e '/General/,/^$/s/Duration.*: \(.*\)/\1,/p' \
                                     -e '/Video/,/^$/s/Display aspect ratio.*: \(.*\)/\1,/p' \
                                     -e '/Video/,/^$/s/Codec ID.*: \(.*\)/\1,/p' \
                                     -e '/Video/,/^$/s/Width.*: \(.*\)/\1,/p' \
                                     -e '/Video/,/^$/s/Height.*: \(.*\)/\1,/p' \
                                     -e '/Audio/,/^$/s/Codec ID.*: \(.*\)/\1,/p' \
                                     -e '/Audio/,/^$/s/Channel(s).*: \(.*\)/\1,/p' \
                                     -e '/Audio/,/^$/s/Sampling rate.*: \(.*\)/\1,/p' \
                                     -e '/Audio/,/^$/s/Language.*: \(.*\)/\1/p')
done # >>  movie.lst

desktop:/media/repository/Filmek$  sh ./list.sh 
./temp/Jimmy_Neutron - Csodagyerek.avi, AVI, Audio Video Interleave, 703 MiB, 1h 19mn, XVID, XviD, 688 pixels, 384 pixels, 16:9, 55, MP3, 2 channels, 32.0 KHz, Magyar
./temp/Ghost in the Shell 2 - Innocence.avi, AVI, Audio Video Interleave, 699 MiB, 1h 39mn, XVID, XviD, 592 pixels, 320 pixels, 1.85:1, 55, MP3, 2 channels, 48.0 KHz,
./temp/Appleseed-02-2004.avi, AVI, Audio Video Interleave, 1.37 GiB, 1h 45mn, XVID, XviD, 720 pixels, 400 pixels, 16:9, 2000, 6 channels, 48.0 KHz,
./temp/SD/Ant.Man.2015.HDRip.HUN.XViD.MD-RNX.avi, AVI, Audio Video Interleave, 1.42 GiB, 1h 57mn, XVID, XviD, 720 pixels, 384 pixels, 1.85:1, 55, MP3, 2 channels, 44.1 KHz,
./temp/Lilo_es_Stitch-01-2002.avi, AVI, Audio Video Interleave, 1.07 GiB, 1h 21mn, XVID, XviD, 656 pixels, 384 pixels, 1.708, 2000, 6 channels, 48.0 KHz,
./temp/A_kem-2015-HuN.avi, AVI, Audio Video Interleave, 1.75 GiB, 2h 10mn, XVID, XviD, 720 pixels, 304 pixels, 2.35:1, 2000, 6 channels, 48.0 KHz,
./temp/Tron_legacy.avi, AVI, Audio Video Interleave, 1.75 GiB, 2h 5mn, XVID, XviD, 720 pixels, 400 pixels, 16:9, 2000, 6 channels, 48.0 KHz,
./temp/Ghost in the Shell.avi, AVI, Audio Video Interleave, 698 MiB, 1h 22mn, DX50, DivX 5, 704 pixels, 368 pixels, 1.913, 55, MP3, 2 channels, 48.0 KHz,
./temp/Appleseed-01-alpha.avi, AVI, Audio Video Interleave, 1.37 GiB, 1h 33mn, XVID, XviD, 720 pixels, 400 pixels, 16:9, 2000, 6 channels, 48.0 KHz,
./temp/kaena-A_Prófécia.avi, AVI, Audio Video Interleave, 701 MiB, 1h 27mn, XVID, XviD, 624 pixels, 336 pixels, 1.85:1, 55, MP3, 2 channels, 48.0 KHz,
./temp/Appleseed-03-Ex_Machina-2007.avi, AVI, Audio Video Interleave, 632 MiB, 1h 44mn, h264, 800 pixels, 450 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./temp/Lilo_es_Stitch-02-Csillagkutyabaj-2005.avi, AVI, Audio Video Interleave, 1.37 GiB, 1h 5mn, XVID, XviD, 672 pixels, 368 pixels, 1.85:1, 2000, 6 channels, 48.0 KHz,
./temp/Mr_Peabody_and_Sherman.avi, AVI, Audio Video Interleave, 1.33 GiB, 1h 32mn, XVID, XviD, 704 pixels, 384 pixels, 1.85:1, 2000, 6 channels, 48.0 KHz,
./temp/bionicle.thelegreb.avi, AVI, Audio Video Interleave, 1.08 GiB, 1h 17mn, XVID, XviD, 640 pixels, 352 pixels, 16:9, 2000, 6 channels, 48.0 KHz,
./házimozi/VID00082_404p.avi, AVI, Audio Video Interleave, 7.85 MiB, 30s 520ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00380_404p.avi, AVI, Audio Video Interleave, 2.62 MiB, 10s 967ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00255_404p.avi, AVI, Audio Video Interleave, 3.08 MiB, 12s 133ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00064_404p.avi, AVI, Audio Video Interleave, 270 KiB, 1s 200ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00369_404p.avi, AVI, Audio Video Interleave, 25.4 MiB, 1mn 37s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00451_404p.avi, AVI, Audio Video Interleave, 9.85 MiB, 38s 433ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00366_404p.avi, AVI, Audio Video Interleave, 24.4 MiB, 1mn 34s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00005-404_404p.avi, AVI, Audio Video Interleave, 3.09 MiB, 13s 8ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 48.0 KHz,
./házimozi/VID00409_404p.avi, AVI, Audio Video Interleave, 9.23 MiB, 36s 467ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00033_404p.avi, AVI, Audio Video Interleave, 8.11 MiB, 31s 880ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00331_404p.avi, AVI, Audio Video Interleave, 15.9 MiB, 1mn 2s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00406_404p.avi, AVI, Audio Video Interleave, 20.2 MiB, 1mn 18s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00100_404p.avi, AVI, Audio Video Interleave, 6.19 MiB, 24s 800ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00245_404p.avi, AVI, Audio Video Interleave, 2.93 MiB, 11s 433ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00390_404p.avi, AVI, Audio Video Interleave, 1.99 MiB, 7s 733ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00092_404p.avi, AVI, Audio Video Interleave, 4.49 MiB, 18s 240ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00004-404_404p.avi, AVI, Audio Video Interleave, 2.43 MiB, 10s 272ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 48.0 KHz,
./házimozi/VID00441_404p.avi, AVI, Audio Video Interleave, 149 MiB, 9mn 31s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00376_404p.avi, AVI, Audio Video Interleave, 862 KiB, 3s 667ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00074_404p.avi, AVI, Audio Video Interleave, 10.3 MiB, 40s 240ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00379_404p.avi, AVI, Audio Video Interleave, 15.1 MiB, 58s 967ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00321_404p.avi, AVI, Audio Video Interleave, 11.4 MiB, 44s 733ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00416_404p.avi, AVI, Audio Video Interleave, 13.6 MiB, 52s 433ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00419_404p.avi, AVI, Audio Video Interleave, 2.76 MiB, 11s 567ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00212_404p.avi, AVI, Audio Video Interleave, 5.84 MiB, 22s 700ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00110_404p.avi, AVI, Audio Video Interleave, 13.0 MiB, 51s 0ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00346_404p.avi, AVI, Audio Video Interleave, 41.5 MiB, 2mn 39s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00293_404p.avi, AVI, Audio Video Interleave, 31.9 MiB, 2mn 2s, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00349_404p.avi, AVI, Audio Video Interleave, 6.65 MiB, 26s 767ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00044_404p.avi, AVI, Audio Video Interleave, 9.84 MiB, 39s 160ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00191_404p.avi, AVI, Audio Video Interleave, 1.04 MiB, 4s 600ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00006-404_404p.avi, AVI, Audio Video Interleave, 2.36 MiB, 10s 368ms, XVID, XviD, 720 pixels, 404 pixels, 16:9, 55, MP3, 2 channels, 48.0 KHz,
./házimozi/VID00178_404p.avi, AVI, Audio Video Interleave, 7.46 MiB, 28s 933ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00275_404p.avi, AVI, Audio Video Interleave, 5.80 MiB, 23s 200ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00177_404p.avi, AVI, Audio Video Interleave, 10.9 MiB, 42s 867ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00222_404p.avi, AVI, Audio Video Interleave, 7.57 MiB, 30s 567ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00120_404p.avi, AVI, Audio Video Interleave, 1.20 MiB, 4s 333ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00426_404p.avi, AVI, Audio Video Interleave, 5.47 MiB, 22s 200ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
./házimozi/VID00311_404p.avi, AVI, Audio Video Interleave, 4.60 MiB, 18s 700ms, XVID, XviD, 720 pixels, 406 pixels, 16:9, 55, MP3, 2 channels, 44.1 KHz,
^C

Így talán egyszerűbb:

$ cat /tmp/template.txt
General;%CompleteName% - %Format%,%FileSize/String%,%Duration/String%,
Video;%DisplayAspectRatio/String%,%CodecID/Hint%,%Width%x%Height%,
Audio;%CodecID/Hint%,%Channels%,%Format_Settings_ModeExtension%,%BitRate/String%,%Language%
File_End;\n

$ find -type f -exec mediainfo --Inform=file:///tmp/template.txt {} +

Húúú. Ez lesz az. Nekem ez így már nagyon is megfelel. Köszi.

Látom jól körbelőttük ezt a témát. Bár az utolsó find paranccsal minden fájlra rákeres, ha csak az avi kell, akkor ahhoz így módosítottam:


find -name "*.avi" -exec mediainfo --Inform=file:///tmp/template.txt {} +