Очень часто смотришь на текст какого-нибудь awk или sed скрипта и понимаешь, что ничего в нем не понимаешь ;) Куча каких-то непонятных предопределеннх переменных, неадекватный синтаксис… Чтобы быть во всеоружии — нужно под рукой всегда иметь шпаргалку ;)
Очень полезные шпаргалки по awk и sed. Взяты отсюда.

Ну и в догонку — отличная подборка односточников на awk [локальная копия]. В комплекте со «шпаргалкой по AWK» получается отличный набор продвинутого awk-программера ;)

Достаточно часто приходится генирировать последовательности в shell. Например, создать 10 файлов с разными именами, или переименовать, или добавить в vxvm диски, присвоив им новые имена, или отформатировать последовательно диски с командной строки на дисковом массиве, ну и т.д. Самый простой и правильный способ — это использовать команду seq, но к сожалению, ее в solaris по умолчанию нет.
Итак, несколько примеров, как напечатать цифры от 1 до 10:

Эти генерилки работают везде
$ i=0; while [ $i -lt 11 ]; do echo $i; i=`expr $i + 1` ; done
$ for i in  1 2 3 4 5 6 7 8 9 10; do echo $i; done
$ perl -e 'print "$_\n" foreach(1..10)'

Эта работает только в bash
$ for (( i = 1; i < 11; i++ )); do echo $i; done

а эта только в linux
$ seq 1 10

Одностраничные шпаргалки по vxvm и vxfs. Датированы 2002 годом, но актуальность не потеряли ;)

Quick references:

Недавно я затрагивал темы загруженности устройств ввода-вывода Oracle и создания Ram-дисков.
Итак, в системе есть достаточно свободной памяти, менеджер томов — vxvm и есть приложение с высокой нагрузкой по вводу-выводу (например Oracle). А если у нас современный сервер, а Oracle standard edition, то так оно и будет (так как standard edition не может использовать более 2Гб памяти). Такая ситуация часто возникает, например на SAP серверах, когда используются 32-разрядные приложения.
Итак, идея такая:
Читать полностью »

Напоминалка опций unix команды find

Напоминалка опций unix команды find теперь и на русском языке. Удобный online интерфейс поможет вспомнить самые нужные опции и построить свою команду для поиска файлов.
Как и было обещано, перевел свой скриптик на русский язык, добавил немножко ссылок на русскоязычные документы по синтаксису команды, исправил несколько ошибок.

Update: 2013.08.02 Переехал на новый домен, изменился интерфейс и главное — напоминалка опций не только для find, но и для grep, fuser, итд

Иногда ну никак не хватает места на загрузочном диске. То нужно немножко места добавить в корень, то новый слайс нарезать, а диск уже разбит под завязку. В этом случае к нам на помощь приходит swap :)

Слайс swap можно в on-line перекинуть, командой format переразбить диск (подрезать  swap, и увеличить или создать новый слайс на диске).

Итак, выбираем время, когда не сервер нет сильной дисковой нагрузки, тем более, сервер не свопит (пэйджинг не считается ;). Проверяем, сколько занято места в свопе и создаем новый своп файл (больше, чем занятое место в свопе).
# swap -l
swapfile dev swaplo blocks free
/dev/dsk/c0t0d0s1 85,1 16 41945456 40637452

Читать полностью »

Несколько ссылок по регулярным выражениям в unix. Практически все документы на русском языке.

PS Изменено 06.12.2008

Все для блага человека — на коленке написан Find helper — напоминалка основных опций команды find. Позоляет за несколько щелчков мыши набросать команды поиска, а не лазить 20 минут по манам, вспоминая опции.
Update: 2013.08.02 Переехал на новый домен, изменился интерфейс и главное — напоминалка опций не только для find, но и для grep, fuser, итд

Да, и русский язык тоже присутствует

Несколько полезных команд для определения оборудования в HP-UX. Немножко неструктурировано, но читабельно ;)

Посмотреть все устройства в сервере:

bash-2.05b# ioscan -f
Class I H/W Path Driver S/W State H/W Type Description
================================================================================
root 0 root CLAIMED BUS_NEXUS
ioa 0 0 sba CLAIMED BUS_NEXUS System Bus Adapter
ioa 1 0/16 sba CLAIMED BUS_NEXUS F16 Port
ba 0 0/16/1 pxb_wxb CLAIMED BUS_NEXUS pxb_wxb Bridge
ba 1 0/16/1/3/0 legacyio CLAIMED BUS_NEXUS Legacy IO Core I/O Adapter (IFB)
tty 0 0/16/1/3/0/1 asio0 CLAIMED INTERFACE Built-in RS-232C
fc 1 0/23/1/1/0 td CLAIMED INTERFACE HP Tachyon XL2 Fibre Channel Mass Storage Adapter

Читать полностью »

По iostat видно, что диск загружен на 100%. Задача — найти какой дисковой группе vxvm принадлежит это диск

bash-2.03# iostat -xzn 2

120.6 0.0 9585.8 0.0 0.0 3.5 0.0 29.3 0 100 c8t60003BA4E86D8000427091E60008442Ed0
11.5 35.0 92.1 280.9 2.2 1.6 47.1 34.4 15 39 c8t60003BA4E86D80004270925D000A1901d0
35.5 11.0 3518.1 37.0 0.0 1.2 0.0 26.7 0 95 c8t60003BA4E86D8000427092D700053713d0

Читать полностью »