Я нашел решение для моего вопроса в Интернете. По-видимому, чтобы Conky (или что-то еще в этом случае) работал с драйверами Broadcom, вам нужно запустить приложение как суперпользователя. Таким образом, чтобы устранить проблему, вы должны:
sudo conky -d
вместо
conky -d
Кроме того, проблема eth1 / wlan0 специфична для драйверов Broadcom ( и должно случиться с ними)
Вы можете попробовать этот oneliner с помощью find и perl:
sudo find . -type d -exec sh -c "./jpegoptim --strip-all -t {}/*.jpg" \; | perl -e '@a=<>; $a=join("", @a); @b = $a =~ /%\s+\((\d+)k\)/g; foreach my $n (@b) {$sum = $sum + $n}; print "Total saved ${sum}k\n"'
Вам нужно скопировать jpegoptim в каталог, в котором вы, конечно, запускаете команду find. 1]
Баш-цикл не нужен, а find может фильтровать каталоги с типом -d.
Часть perl будет просто анализировать «% (сохраненный размер для каждого k) "и суммировать все значения перед печатью одной строки только с суммой.
find . -type d возвращает только каталоги. -exec <command> \; запустит заданную команду для каждого каталога sh -c "", так как нам нужна оболочка для интерпретации подстановочного символа * .jpg. весь вывод передается по каналам | в perl perl, сначала создайте массив с stdin (& lt;>, оператор алмаза), @a. Затем, присоединенный к строке, $ a @b = $a =~ /%\s+\((\d+)k\)/g поместит в массив @b все согласованные строки, включенные в средние строки суммирования сжатия, используя регулярное выражение. Наконец foreach my $n (@b) {$sum = $sum + $n} суммируйте все значения массивов перед печатью результата