Продолжаю тему “оптимизации работы пальцами” в bash. До сих пор мы говорили о горячих клавишах и различных shell-хитростях, теперь же попробуем собрать “народную мудрость” в разных дистрибутивах linux и посмотреть, какие сокращения (aliases) можно использовать вместо полных команд. Дав команду alias можно увидеть несколько интересных приёмов.
Вот что, например, что на эту тему я надёргал из OpenSuSE и SLES:
alias +='pushd .' # закидывает текущий каталог в стек alias -='popd' # извлекает из стека alias ..='cd ..' # экономим целых 3 символа alias ...='cd ../..' # ещё круче :-) alias beep='echo -en "\007"' # пищалка alias cd..='cd ..' # исправление обычной очепятки alias dir='ls -l' # длинный формат ls - аналог ll (cм. ниже) alias l='ls -alF' # "длинный" ls со скрытыми файлами и символическим обозначением типов alias la='ls -la' # "длинный" ls со скрытыми файлами (начинающимися с ".") alias ll='ls -l' # "длинный" ls alias ls='ls $LS_OPTIONS' alias ls-l='ls -l' # ещё одна опечатка alias md='mkdir -p' # создаёт полный путь каталога alias o='less' # alias rd='rmdir' alias rehash='hash -r' alias unmount='echo "Error: Try the command: umount" 1>&2; false' - учимся правильно писать umount alias you='su - -c "/sbin/yast2 online_update"' - запуск онлайн обновления SuSE от админа. Я себе заменил на alias you='sudo /sbin/yast online_update'
ALT Linux (повторы с предыдущим я выкинул):
alias cp='cp -i' alias d='ls' - тоже вариант ls alias df='df -h -x supermount' alias du='du -h' # du сразу выводит размеры "по-человечески" alias l='ls -lapt' # ещё один "длинный ls" alias ll='ls -laptc' alias ls='ls --color=auto' alias mv='mv -i' alias p='cd -' alias rm='rm -i' alias s='cd ..'
Можно также определить какие-то свои алиасы и задать их в стартовом скрипте .bash_profile. В общем, полный простор деательности!
### команда $.avi будет расширена до mplayer $.avi
alias -s avi=mplayer
### с рекурсией по умолчанию
alias cpr=’cp -r’
alias rmr=’rm -r’
### экономим
alias cps=’sudo cp -r’
alias mvs=’sudo mv’
alias rms=’sudo rm’
### зверски экономим
alias apt=’sudo apt-get install’
### развиваем память
alias targ=’tar -zxvf’
alias tarr=’tar -xvf’
alias tarb=’tar -jxvf’
Здорово! Совершенству, как говорится, нет предела. Единственное, последние три команды – не особо пригодятся: tar совершенно нормально распознаёт, чем запакован архив, поэтому ключи z и j не очень-то нужны, да и v я лично не использую – достаточно xf. Поэтому можно сделать так:
alias tx=’tar -xf’