Консольные хитрости #2

Продолжаем публикацию “однострочников” для bash, которые выполняют полезные и интересные действия :)

Список установленных расширений для Firefox

grep -hIr -m 1 em:name ~/.mozilla/firefox/*.default/extensions|sed 's#\s*##'|tr '<>=' '"""'|cut -f3 -d'"'|sort -u

Список установленных расширений для Chromium (с адресом страницы)

for i in $(find ~/.config/chromium/*/Extensions -name 'manifest.json'); do n=$(grep -hIr name $i| cut -f4 -d '"'| sort);u="https://chrome.google.com/extensions/detail/";ue=$(basename $(dirname $(dirname $i))); echo -e "$n:\n$u$ue\n" ; done

Уровень сигнала wifi

/sbin/iwconfig wlan0 | grep Quality | cut -d = -f2 | awk '{print $1}'

Оптимизация sqlite-баз, в которых Firefox хранит всякую служебную информацию. Позволяет немного ускорить его работу

find ~/.mozilla/firefox -name '*.sqlite' -print -exec sqlite3 {} "VACUUM; REINDEX;" \;

Количество процессов для пользователя (Linux only)

pgrep -cu boombick

Сравнить вывод двух команд

diff <(tail -10 file1) <(tail -10 file2)

Удалить все файлы, кроме одного :) Часто пригождается, чтобы не писать rm тут_куча-имен-файлов

ls -Q | grep -v "not-for-delete-file" | xargs rm -r

Собрать несколько тарболлов в один

cat 1.tar.gz 2.tar.gz | tar zxvif -

Размер окна терминала

 echo $COLUMNS x $LINES

Вывести man-страницу как обычный текст. Удобно для распечатки

man need-man | col -bx

 

Система Orphus

 


 

Comments: 4

  1. Konstantin Khomoutov May 24th, 2010 at 7:18 pm

    Пара занудских замечаний:

    По поводу удаления файлов:
    1) С именами всё плохо на самом деле из-за того, что согласно POSIX в именах запрещено только появление символа с кодом 0, и ls -Q будет работать только в простых случаях.
    2) У шеллов есть ограничение на количество аргументов комстроки либо на их общую длину (не буду врать, но вспоминается цифра примерно в 4k).
    В итоге бронебойным скриптам следует поступать примерно так:
    $ find . -maxdepth 1 -type f -not -name foo -print0 | xargs -0 -n 30 rm -f
    а поскольку “гнутый” find прекрасно умеет удалять сам, это вырождается в
    $ find . -maxdepth 1 -type f -not -name foo -delete

    По поводу распечатки: можно и сразу в постскрипт выгнать:
    $ man -Tps woman >/tmp/woman.ps

  2. Анон May 24th, 2010 at 9:14 pm

    Для распечатки манов удобнее делать так
    man -t > man.ps

  3. ubuntu August 16th, 2010 at 12:13 am

    Пиргодилось удаление “всех кроме одного”, спасибо.

  4. Gara September 22nd, 2010 at 2:43 pm

    В копилку знаний cli пойдет. Особенно про выводы в текст маны неплохо

Add a Comment