Несколько способов:
Читать полностью »

Вывести последнее поле в строке:

$ la -la | awk '{print $NF}'

Просуммировать 5-е поле и вывести везультат в Мб:

$ ls -la | awk '{i+=$5}END{print i/1024/1024}'

Команды, позволяющие быстро перемещаться в bash:

  • ну клавиши вверх-вниз, понятно, позволяют перемещать между выполненными командами
  • перейти на начало строки ^A
  • перейти на конец строки ^E
  • найти команду в hisrory ^R

Добавлено:

  • «выкусить» слово слева ^W
  • «выкусить» все до начала строки слева ^U
  • «выкусить» все справа до конца строки ^K
  • «вставить» из буфера ^Y

PS Оказывается, горячих клавиш в bash заметно больше.

Update: 20100729

Самый простой и надежный способ, выводит отсортированный по занимаемому месту список файлов в текущем каталоге :

du -ks ./* | sort +0n

Находим самый занятый каталог, заходим в него и повторяем, и так пока не найдем самый тяжелый файлик, который переполнил файловую систему. Затем определяем его тип и процесс, который его пишет.
Читать полностью »

Маленькие полезные командочки для поиска:

Поиск по содежимому файлов grep -l, например, найти строку «10.1.2.3″ во всех файлах в каталоге /etc :

# grep -l 10.1.2.3 /etc/*

Поиск по регулярному выражению выполняет команда egrep. Например: найти, игнорируя регистр (опция -i) в выводе команды ls  все файлы, начинающиеся с ‘t’ или содержащие ‘Ze’:

# ls | egrep -i '^t|Ze'
gconfd-zenoss
mapping-zenoss
orbit-zenoss
trtmpP6aOeP
trtmpZ6aWeP

Найти в файлах /etc/pa* те, которые содержат строку ROT или ROOT, или ROOOT итд, игнорируюя регистр:

# egrep -li '^RO+T' /etc/pa*
/etc/passwd

Пропустить все пустые строки:

# cat /tmp/file.txt | grep -v ^$
# cat /tmp/file.txt | grep -v .

Смотри также Регулярные выражения в unix.

Иногда в Solaris возникает необходимость определить, что за процесс висит на порту. Как то мне попадался скриптик на эту тему — whohassocket.sh . Выводил все в страшном виде ;) Потом попались два скриптика на sun.com — кривые (эти скрипты не различают последние цифры в номере порта ): первый, второй

Пришлось переписать ;)
Читать полностью »

Для solaris:

$ pkgchk -l SUNWdoc | grep "Pathname:" | more

Как ввести символ табуляции в командной строке? Волшебная комбинация -

Ctrl-v затем Ctrl-i

Пример:

$  cat /tmp/syslog.conf  | egrep -v -e '^[ ^v^i]*#' | sed 's/ /^v^i/g'

ЗЫ Естественно, замените ^v^i соответствующими нажатиями клавиш ;)

Данные метод используется обычно при резервном копировании на удаленную машину.

Сделать бэкап tar-ом:
Читать полностью »

Малоизвестные, но полезные команды для работы с файловыми системами в solaris.

/usr/sbin/devnm  name [name...]

выводит устройство, на котором смонтирована файловая система, указанная в аргументе.

$ devnm / /var
/dev/md/dsk/d10 /
/dev/md/dsk/d30 /var

/usr/sbin/fstyp [-v] special

выводит тип файловой системы устройства special. Полезная команда, чтобы узнать метод оптимизации файловой системы, какой процент места зарезервирован и может быть использован только root-ом.

# fstyp -v /dev/md/dsk/d30 | grep minfree
minfree 10%      maxbpg  2048    optim   time

Исправить метод оптимизации файловой системы и процент резервированного места можно командой /usr/sbin/tunefs:

# tunefs -o space /dev/md/rdsk/d10
# tunefs -m 1 ; # оставить 1% зарезервированным для root-а