Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem nemohu přijít na příkaz

cílem je pouze získat do konzole matchující řádek,ajenže se vypíše vše.

for i in `ls *.mp4` ;do ffprobe $i | grep kb/s ; done
něco takovéhlo bych chtěl asi

for i in `ls *.mp4` ;do ffprobe $i (| grep kb/s 2> /dev/null) ; done

Předmět Autor Datum
přišel jsem na magii ffprobe file.mp4 2>&1 | grep ...
Nany narni 30.07.2013 23:30
Nany narni
dobře, tak jinak, jak spočtu průměrný bitrate, nástřel (for i in `ls *.mp4` ;do ffprobe $i 2>&1 | gr…
Nany narni 30.07.2013 23:57
Nany narni
a proč mi konzola sama od sebe hlásí 1] 8263 done ( for i in `ls *.mp4`; do; ffprobe $i 2>&1 | grep…
Nany narni 30.07.2013 23:59
Nany narni
uff, tak jsem to došmrndal takto echo $[ $((for i in `ls *.mp4` ;do ffprobe $i 2>&1 | grep -Po "(?<…
Nany narni 31.07.2013 00:04
Nany narni
Líp to nešlo. [14959-strucne-jpg] poslední
IQ37 31.07.2013 00:17
IQ37

dobře, tak jinak, jak spočtu průměrný bitrate,
nástřel
(for i in `ls *.mp4` ;do ffprobe $i 2>&1 | grep -Po "(?<=], )(\d+)(?= kb)" ; done; )|awk '{s+=$1} END {print s}' | $[`cat`/ `ls -l *.mp4 | wc -l`]

dělá mi problém třetí část (děleno |)

(for i in `ls *.mp4` ;do ffprobe $i 2>&1 | grep -Po "(?<=], )(\d+)(?= kb)" ; done; )|awk '{s+=$1} END {print s}' udělá sumu.

$[aritm. výraz] je kalkulačka v zsh a `ls -l *.mp4 | wc -l` spočte počet mp4 souborů

jenže problém je to dát dohromady.

uff, tak jsem to došmrndal takto

echo $[ $((for i in `ls *.mp4` ;do ffprobe $i 2>&1 | grep -Po  "(?<=], )(\d+)(?= kb)"    ; done; )|awk '{s+=$1} END {print s}' )/$(ls -l  *.mp4 | wc -l)]

můžete poradit, jak to zpřehlednit? např aby se nevyskytoval dvakrát řetězec mp4, nebo jak efektvině chainovat příkazy(tzn nejdří v spočtu bitrate souborů, pak je sečtu, pak zjistím počet mp4 a pak součet vydělím potem souborů?

Zpět do poradny Odpovědět na původní otázku Nahoru