Неразбериха в алиасахalias, shell, linux, zsh, bash

Бывает так что какой-нить алиас равен команде, т.е alias ls='ls -F --color=auto' или alias df='df -h'. Но бывает необходимость воспользоватся не алиасом а именно командой, т.е. в приведенных примерах что бы ls был не цветным и df показывал размер в виде блоков. unalias использовать не вариант по той причине что после него наш алиас уже не будет работать, но предусмотрительные создатели шелов (по меньшей мере zhs и bash) позаботились о таком случае.
Временно отменить выполнение алиаса можно так: \ls и \df
08-07-2009, 10:09    Комментарии: 6

Пара полезных вещеё для zshzsh, linux, tips, dotfiles, цвета

Немного проапдейтил свои .zshrc добавив глобальный алиас для разукрашивания ошибок в выводе программ.

Для разукрашивание ошибок подойдет алиас
alias -g ERR='2>>( sed -ue "s/.*/$fg_bold[red]&$reset_color/" 1>&2 )'
(необходимо что бы был загружен модуль цветов autoload colors && colors)
Для перехода в родительские каталоги появилась функция
dot() {
	if [[ $LBUFFER = *.. ]]; then
		LBUFFER+=/..
	else
		LBUFFER+=.
	fi
}
И её вызов
autoload -U dot
zle -N dot
bindkey . dot
Теперь zsh нам сам дописывает /.. когда мы вводим более двух точек. Т.е. ... заменяется на ../.. если вводим ещё одну точку то строка примет вид ../../.. и так далее.
23-06-2009, 21:20    Комментарии: 0

Немного горячих клавиш zshzsh, linux, shell, tips

Сразу оговорюсь, я не буду описывать все возможные сочетания клавиш, здесь описание только тех хоткеев которые использую сам и которые помогают мне в моей повседневности. В основном эти хоткеи касаются редактирования команды и навигации.
Все хоткеи работают в zsh в emacs-style раскладке и в дефолтной конфигурации bash.

Символ ^ означает клавишу Control, а ` это Meta (чаще известная как Alt, так же однократное нажатие Escape тоже приравнивается к Meta)
^i - аналог Tab, автодополнение
^a - переход к началу строки
^e - переход к концу строки
^b - аналог стрелки влево
^f - аналог стрелки вправо
^p - аналог стрелки вверх
^n - аналог стрелки вниз
^h - аналог BackSpace
^k - удалить всё до конца строки (все удаляемое по горячим клавишам удаляется переносится в буфер)
^u - удалить строку
^w - удалить от курсора до начала слова
^x^x - скачок между началом строки и текущей позицией курсора
^y - вставить текст буфера
^_ - undo, отмена последнего действия
^l - очистить экран (набранная строка и даже позиция курсора остаётся)
`< - к первой команде в истории сессии
`> - к последние команде в истории сессии
`. - вставить последний аргумент из предыдущей команды
`b - переход к началу текущего или предыдущего "слова"
`f - переход к следующему "слову"
`d - удалить от курсора до начала "слова"
`BackSpace - удалить текст от текущей позиции до начала "слова"


Так же в у меня в .zshrc есть строки
autoload -U edit-command-line
zle -N  edit-command-line
bindkey -M emacs "^X^E" edit-command-line 

благодаря которым можно вызвать редактор который прописан в переменной EDITOR c помощью сочетания ^x^e. Таким же способом можно назначить хоткей на любую команду и функцию

Естественно что это не все горячие клавиши, но этот минимум очень удобен при работе в консоли, более полный список можно найти в документации
20-04-2009, 17:39    Комментарии: 0

ZSH clobber и поведение перенаправленияzsh, shell, clobber, перенаправление, linux

Zsh поддерживает такое же перенаправление вывода как и bash (плюс расширения, по типу sort < bla < bbla и sort < b{la,bla}), но в его поведении по умолчанию есть одна небольшая хитрость — например, echo > bla выдает ошибку вместо перезаписи файла bla
Такое поведение некоторых раздражает, меня до недавнего времени это не "напрягало", ибо такие перенаправления для меня редкость.
Немного документации к zsh привели меня в чувства. Поведение это можно изменить опцией CLOBBER
setopt clobber 
Так же вне зависимости от настроек можно использовать модификации команд (>! и >|), позволяющие перезаписывать файл не выдавая сообщения об ошибке. Такие модификаторы имеются практически у всех команд перенаправления (>&, &>).

Так как > я использую редко, то остановился на варианте без изменения настроек.
07-04-2009, 10:19    Комментарии: 0

Мой .zshrc с комментариямиzsh, zshrc, linux, shell, dotfiles

Выкладываю свой zshrc. Немного причесал. С комментариями оказалось 377 строк, без комментариев около ста шестидесяти. Как-то он у меня постоянно растет и изменяется, в общем у меня это единственный конфиг который я допиливаю (добавляю функции и алиасы) для удобства. Все никак не могу придумать нормальный FMMODE, поэтому кусок касающийся его и не привожу. Думаю как небольшой хелп по настройке zsh этот конфиг сойдет.

мой zshrc
05-03-2009, 11:55    Комментарии: 17

Раньше »