|
Настройка шрифтов для консоли и терминала |
Автор: Warlock
[комментарии]
|
| Одна из первых вещей, которые требуется поменять в свежеустановленной системе - шрифты и раскладки клавиатуры. С предлагаемыми по умолчанию шрифтами обычно имеется несколько проблем:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Использование less вместо tail для отслеживания хвоста файла (доп. ссылка 1) |
[комментарии]
|
| Для отслеживания добавляемых в хвост файла изменений, например, для наблюдения
за наполнением лог-файла, вместо традиционной команды "tail -f" удобно
использовать утилиту less с опцией "+F" (less +F имя_файла). Преимущество
состоит в том, что утилита less предоставляет переключаться между режимом
перемещения по файлу и отслеживанием изменений.
Например, при появлении важной информации можно прервать отслеживание хвоста,
нажав "Ctrl+C", после чего выполнить поиск или переместиться в верхнюю часть
файла. Для возобновления отслеживания изменений достаточно нажать "F".
Аналогичным образом, нажав "F", можно проверить появление новых данных в хвосте
и для файла, открытого в less без предварительного указания опции "+F".
Недостатком less является поддержка отслеживания только одного файла, в то
время как "tail -f" позволяет одновременно следить за хвостами нескольких файлов.
|
|
|
|
|
Динамическое изменение заголовков окон в screen (доп. ссылка 1) |
[комментарии]
|
| Как известно, screen умеет динамически менять заголовки окон, исследуя каждую выводимую строку приложения на наличие esc-k. Вот этого в .bashrc достаточно, чтобы научить screen менять заголовок в зависимости от запущенного приложения:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Автодополнение ssh-хостов в командной строке (доп. ссылка 1) |
Автор: bthemad
[комментарии]
|
| Простейшим способом упрощения набора параметров для частоиспользуемых хостов является задание псевдонимов в ~/.ssh/config:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Раскраска man-страниц в Linux (доп. ссылка 1) |
[комментарии]
|
| Для того чтобы насладиться системными руководствами в цвете, можно подключить к
man программу для листания текста "most":
в Debian-подобных дистрибутивах:
apt-get install most
в [Red Hat]-подобных дистрибутивах:
yum install most
Настраиваем вывод в man, в ~/.profile добавляем или выполняем в командной
строке для текущей сессии:
export MANPAGER="/usr/bin/most -s"
Смотрим результат:
$ man bash
|
|
|
|
|
Отображение числа непрочитанных писем Gmail в строке статуса Screen (доп. ссылка 1) |
Автор: itbg
[комментарии]
|
| Итак, нам потребуется установленный GNU Screen и Wget
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Выборка и копирование файлов по дате в Linux |
Автор: Sclif13
[комментарии]
|
| Столкнулся с такой задачей: из каталога необходимо выбрать и скопировать кучу
файлов за один месяц.
Вооружившись командами cp, ls и awk я приступил и вот что получилось:
cp $(ls -l | grep 2009-01 | awk '{print $8}') /home/temp/
ls -l выводит содержимое каталога с датой
grep соответственно выбирает файлы за месяц
awk '{print $8}' выводит имя файла для команды cp
Дальше больше ...
Есть каталог в котором куча подкаталогов и в которых соответственно файлы,
которые надо скопировать.
Тут на помощь приходит утилита du:
cp $(du -a --time | grep 2009-01 | awk '{print $4}') /home/temp/
|
|
|
|
|
Обработка XML данных в командной строке при помощи xmlstarlet |
[комментарии]
|
| В составе Debian, Ubuntu и других Linux дистрибутивах можно найти пакет xmlstarlet (http://xmlstar.sourceforge.net/),
представляющий собой набор утилит командной строки для преобразования, выборки данных и проверки XML документов.
Реализует для работы с XML функции похожие на утилиты grep, tr, sed, awk, diff, patch, join и т.п.,
что очень удобно для разбора XML документов в скриптах.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Настройка работы кнопок home и end при работе во FreeBSD через ssh-клиент Putty (доп. ссылка 1) |
[комментарии]
|
| При работе во FreeBSD по ssh через putty не работают кнопки Home и End.
Для решения проблемы в настройках putty (Connection / Data / Terminal-type string)
нужно поставить putty вместо xterm.
Это позволит использовать описание терминала putty, которое уже присутствует в
termcap из состава FreeBSD.
Другой вариант, в .cshrc можно прописать:
bindkey "\e[3~" delete-char
bindkey "\e[1~" beginning-of-line
bindkey "\e[4~" end-of-line
|
|
|
|
|
Команды для поиска больших файлов в заданной директории |
[комментарии]
|
| Для вывода отсортированного списка файлов размером больше 500Мб, находящихся
в дереве файловой системы начиная с текущей директории можно использовать команду:
find . -type f -size +500M -exec ls -l {} \; | sort -k5 -n -r| less
Для вывода отсортированного по размеру списка директорий можно использовать команду:
find . -type d -maxdepth 1 -exec du -s {} \;|sort -k1 -r -n| less
Для выявления конечной директории с большими файлами можно снять ограничение на
рекурсивную проверку:
find . -type d -exec du -s {} \;| sort -k1 -r -n| less
Найти все avi, mpg, wmv файлы можно так:
find . \( -iname "*.avi" -o -iname "*.mpg" -o -iname "*.wmv" \) -type f -exec ls -l {} \;| less
PS. Вместо ls можно было использовать встроенные опции -ls или -printf "%s %P\n",
но %P не всегда легко вспомнить, а вывод -ls не совсем привычен.
|
|
|
|
|
Удобный поиск по истории команд в консоли в Debian GNU Linux |
Автор: Karbofos
[комментарии]
|
| C помощью кнопок PgUp, PgDwn (страница ввсерх/вниз) можно листать хистори введенных ранее команд,
при этом в отличии от использования клавиш управления курсором, при наличии в строке ввода
каких-то символов они будут использованы в качестве маски для фильтра.
Т.е. введя "ssh" и нажав PgUp/PgDwn можно просмотреть введенные ранее команды с использованием ssh.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Использование Vim для просмотра файлов с подсветкой синтаксиса |
[комментарии]
|
| В поставке vim присутствует сценарий /usr/share/vim/vim71/macros/less.sh:
#!/bin/sh
if test $# = 0; then
vim --cmd 'let no_plugin_maps = 1' -c 'runtime! macros/less.vim' -
else
vim --cmd 'let no_plugin_maps = 1' -c 'runtime! macros/less.vim' "$@"
fi
Который можно использовать для замены less с подсветкой синтаксиса.
В .bashrc добавляем:
alias less=/usr/share/vim/vim71/macros/less.sh
|
|
|
|
|
Подборка полезных консольных команд и приемов работы в bash |
[комментарии]
|
| Быстрый поиск PID идентификатора запущенного процесса по имени:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Как хранить дату выполнения в истории команд bash (доп. ссылка 1) |
Автор: kpblca
[комментарии]
|
| По умолчанию bash, а точнее утилита history, не сохраняет в .bash_history
время исполнения каждой команды.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Отдельный файл истории работы в bash для пользователя работающего через SU (доп. ссылка 1) |
[комментарии]
|
| Чтобы поместить в отдельный лог команды выполненные в режиме su:
.bash_profile
export HISTSIZE=3000
export HISTFILESIZE=99999
export HISTFILE=/root/.bash_hist-$(who am i|awk '{print $1}';exit)
Получим два файла истории: .bash_hist-user и .bash_hist-root
|
|
|
|
|
Как задать задержку выключения дисплея для консоли Linux и FreeBSD |
Автор: Johny
[комментарии]
|
| Установка времени гашения консоли Linux:
setterm -blank <минуты>
Или чтоб экран не гас совсем:
setterm -blank 0
Для FreeBSD в /etc/rc.conf: blanktime="NO", saver="NO" или blanktime="секунды"
Команда:
vidcontrol -t секунды < /dev/ttyv0
или
vidcontrol -t off < /dev/ttyv0
|
|
|
|
|
Как подключиться к уже открытой сесии screen (доп. ссылка 1) |
[комментарии]
|
| Для дублирования двух screen сессий, например, для удаленной демонстрации каких-то консольных операций:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Изменение графической заставки, отображаемой в процессе загрузки Linux. (доп. ссылка 1) |
Автор: Alexander Kuprin
[комментарии]
|
| Настройка bootsplash для AltLinux (темы берутся с http://bootsplash.de/)
В качестве примера взята тема AquaMatrix для разрешения 1024x768).
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Как выделить цветом определенное слово, используя "tail -f" (доп. ссылка 1) |
[комментарии]
|
| Пример, выделения слова Reject при просмотре хвоста почтового лога:
tail -f /var/log/maillog |perl -p -e 's/Reject/\033\[46;1mReject\033[0m/gi;'
Если нужно не только выделять цветом, но и подавать звуковой сигнал при появлении test@test.ru:
tail -f /var/log/maillog |perl -p -e 's/(test\@test.ru)/\033\[46;1m$1\033[0m\007/gi;'
|
|
|
|
|
Решение проблем со screen под FreeBSD (доп. ссылка 1) |
Автор: Vladimir Kurtukov
[комментарии]
|
| Иногда приложения перестают запускаться из-под screen в FreeBSD.
Например, midc ругается "subshell.c: read (subshell_pty...): Unknown error: 0".
Для решения проблемы достаточно выполнить "killall -CONT <your shell>", например:
killall -CONT bash
|
|
|
|
|
|
Как осуществить форматирование файла ограничив число символов в строке |
[обсудить]
|
| Жестко разбить по 60 символов в строке: fold -w 60 test.txt
Разбивать только по пробелам, не разбивая слова на части: fold -s -w 60 test.txt
Для форматирования текста программы на Си можно воспользоваться утилитой indent.
Разбить на параграфы поможет fmt из textutils.
|
|
|
|
|
Некоторые полезные клавишные комбинации в Midnight Commander'е |
[обсудить]
|
| Ctrl-\ - возможность ведения списка часто используемых директорий, включая FTP.
Сtrl-s или Meta-s - интерактивный поиск файла в панели.
Meta-Tab - дополнение имени файла в любом диалоге.
Ctrl-q - вставить в редакторе непечатный символ по коду.
F1...F10 эмулируются ESC-1...ESC-0
F11..F12..F13.. эмулируются нажатием Shift-F1..Shift-F2..Shift-F3..
Meta-! - запустить программу и посмотреть ее вывод во встроенном просмотрщике.
Meta-c - быстрый переход в директорию
Meta-t - изменить тип отображения файлов в панели.
В редакторе: Shift-! - выход в командную строку на время, ctrl+T - перекодировка.
Выделить только директории можно добавив / после * в блоке пометки.
midc -s - для работы на медленных терминалах.
|
|
|
|
|
Как в screen скопировать многостраничный текст в буфер и обратно. |
[обсудить]
|
| Ctrl+A,Esc
Подвести курсор к нужной позиции (можно использовать для просмотра предыдущих страниц)
и нажать Enter.
Отметить нужный фрагмент и нажать Enter.
Для вставки сохраненного блока необходимо нажать Ctrl+A,].
|
|
|
|
|
Сброс терминала |
[обсудить]
|
| # echo -ne "\033c" >/dev/tty1
или
$ stty sane
или
$ reset
|
|
|
|
|
Использование нескольких буферов обмена в консоли при помощи GNU Screen (доп. ссылка 1) |
Автор: Владимир Кунщиков
[комментарии]
|
| Довольно часто возникает потребность в нескольких буферах обмена между открытыми консольными сессиями. Задача легко решаема при помощи [[https://www.gnu.org/software/screen/manual/html_node/Registers.html#Registers регистров]]
в [[https://www.gnu.org/software/screen/ GNU Screen]]. Для создания и быстрого доступа к дополнительным буферам необходимо задать в файле $HOME/.screenrc команды копирования в регистр
[[https://www.gnu.org/software/screen/manual/html_node/Paste.html readreg]] и чтения из регистра [[https://www.gnu.org/software/screen/manual/html_node/Paste.html paste]]. Ниже пример добавления буферов, закрепленных за клавишами 1 и 2:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|