Tips'n'tricks юниксоидаЕвгений «j1m» Зобнин Хакер, номер #100, стр. 114 (j1m@list.ru) Сегодня в нашем меню: советы по X Window и KDE, несколько интересных типсов, посвященных использованию бессмертных Vim и Mutt, пара хинтов по работе с излюбленным инструментом администратора - screen и даже описание простого, но эффективного механизма бэкапа. Все ингредиенты тщательно отобраны и изысканно приготовлены. Угощайся. Shell Модификаторы имен файлов в ZSH (пример: STRING="a/b/c"; echo "$STRING:модификатор"): :h - начальный каталог (аналог команды dirname); :t - имя файла (аналог команды basename); :e – расширение; :r - удалить расширение; :l - конвертировать в строчные буквы; :u - конвертировать в прописные буквы. X Window Включить поддержку колесика мыши (добавить в секцию InputDevice файла /etc/X11/xorg.conf): Option "ZAxisMapping" "4 5" Разрешить запуск X-сервера без мыши (добавить в секцию ServerFlags): Option "AllowMouseOpenFail" "true" Копирование и вставка из командной строки: $ cat file | xclip $ xclip -o Циклическое переключение разрешения экрана: Ctrl+Alt+'+' Ctrl+Alt+'-' X-сервер в окне X-сервера: $ Xnest -ac -geometry 1024x768 :1 & Сетевой доступ к X-серверу (192.168.3.3 - X-клиент, на нем исполняются программы; 192.168.3.1 - X-сервер, отрисовывает картинку): Открываем доступ: [server]# xhost +192.168.3.3 [client]$ export DISPLAY=192.168.3.1:0.0 Второй графический сеанс на локальной машине: $ startx -- :1 Виртуальные файловые системы Konqueror: audiocd:/ - аудио CD; fish:/ - SSH; ftp:/ - FTP; http:/ - HTTP; imap:/ - IMAP; info:/ - страницы info; ldap:/ - каталоги LDAP; man:/ - man-страницы; nntp:/ - NNTP; pop3:/ - POP3; print:/ - система печати; rapip:/ - подключение к КПК; sftp:/ - SFTP; slp:/ - Service Locator Protocol; smb:/ - SMB (Samba); ssh:/ - SSH (запускается Konsole); vnc:/ - диалог подключения к VNC. Замена оконного менеджера в KDE: $ export KDEWM="icewm" Ускорение KDE путем отключения поддержки IPv6: $ export KDE_NO_IPV6=TRUE Multimedia Запись интернет-радио: $ mplayer http://www.host.ru:8128 -dumpstream \ -dumpfile music.mp3 -vc dummy -vo null Vim Убираем из окна gvim все ненужное (вроде панели инструментов) и включаем меню, вызываемое нажатием второй кнопки мыши: :set guioptions=acmgrL :set mousemodel=popup Включаем «фолдинг» (все строки, находящиеся между «{{{» и «}}}», будут автоматически свернуты): :set foldmethod=marker :set foldmarker={{{,}}} Делаем работу с закладками (табами) более удобной (<F11> - предыдущий таб, <F12> - следующий): :map <F11> :tabprevious<CR> :map <F12> :tabnext<CR> Просмотр содержимого ftp-ресурса: $ vim ftp://ftp@host.ru/pub Редактировать файл по протоколу scp: $ vim scp://user@host.ru/.vimrc Редактировать файл по протоколу sftp: $ vim sftp://user@host.ru/.vimrc Mutt Учим mutt показывать появление новых писем в ящике флагом 'N': mailboxes `echo ~/Mail/*` Используем различные методы сортировки для разных ящиков (содержимое ящика Inbox сортируется по датам, всех остальных - по тредам): folder-hook . 'set sort=threads' folder-hook Inbox 'set sort=date-received' Screen Отключаем приветствие: startup_message off Настраиваем статусную строку (время дата юзер:хост [ открытые окна ]): caption splitonly "%{wb} %=%n %t " hardstatus lastline "%{+b wk} %c %D %d %M %Y %=[ %w ] " Вешаем на клавиши запуск программ (нажимать следует в сочетании с <Ctrl>): bind 'q' screen mc bind 'w' screen mutt bind 'e' screen elinks Клавиши <F1> и <F2> для навигации по окнам: bindkey -k F1 prev bindkey -k F2 next System Включение поддержки высоких консольных разрешений во FreeBSD: # cd /usr/src # echo "options VESA\noptions SC_PIXEL_MODE" >> sys/i386/conf/GENERIC # make kernel Misc Создание локали (на примере cp1251): # localedef -c -i ru_RU -f CP1251 ru_RU.CP1251 Очень простой способ бэкапа домашнего каталога с исключением некритичных каталогов: $ ARCHIVE="~/tmp/backup.tar.bz2" $ NO_DIRS=$HOME'/(music|image|video)' $ find $HOME | egrep -v -e $NO_DIRS | tar -c - | bzip2 -c > $ARCHIVE |