Username 07.02.2009 14:15

Tips & tricksAlias

На написание натолкнул товарищ lelon своим постом про МС.
В нем он создал свой скрипт, запихал в /bin и пользуется. Отмечу, что скрипт был коротенький и по сути работал с одной командой - mc.
Не все знают, что баш - жутко ленивая штука и там есть очень удобная команда alias

Так вот. команда alias выводит список псевдонимов команд, определенный в .bashrc или в .bash_aliases.
Говоря кратко, такими псевдонимами можно заменять стандартные команды на несколько другие, например, с нужными опциями.
Пример моего вывода alias:
1
2
danya@dell-kubuntu:~$ alias
alias ls='ls --color=auto'

Как видно, команда ls заменяется собой же, но с некоторой цветовой схемой. Если заглянем внутрь .bashrc, то увидим жуткие слова:
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then

eval `dircolors -b`;
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'


#alias grep='grep --color=auto'
#alias fgrep='fgrep --color=auto'
#alias egrep='egrep --color=auto'
fi


# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

Заметьте, что расскоментирована только строка с ls.

Как проще добавить свои псевдонимы? Опять же, командой alias.
1
alias псевдоним='команда'

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

Чтобы псевдоним действовал всегда, надо добавить аналогичную строчку в .bashrc или .bash_aliases.

Лирическое отступление. Чтобы узнать, какой именно файл используется у вас, посмотрите содержимое домашней директории. Понятно дело, файлы , начинающиеся с точки - скрытые и их надо видеть. Если есть .bash_aliases то используйте его, если нет - .bashrc. Но.

СОЗДАВАЙТЕ БЭКАПЫ ЭТИМ ФАЙЛАМ.

Вставив нужную строчку в нужный файл вы получите:

1.) Псевдоним.
2.) Удобство.
3.) ??????
4.) PROFIT

Чтобы изменения вступили в силу, можно сделать логаут, ребут, но проще выполнить:
1
danya@dell-kubuntu:~$ . .bashrc

Этим вы перезагрузите конфигурационный файл. (После первой точки есть пробел)
Вуаля.


Тэги: .bashrc bash хитрость
+ 3 -
Похожие Поделиться

zb 07.02.2009 16:31 #
для более гибких случаев подойдут так же функции баш:
1
2
3
ll() {
ls -l "$@" | tee > (maxfile=$(sort -nk5|tail -1) && echo -e "biggest file is \n$maxfile") && echo "." | cat
}

(пример дурацкий но чего-то в голову ничего не лезет)
Username 08.02.2009 12:38 #
о_О нетривиально
а еще. я с бодуна. не могу прочесть...........
пора завязывать:(
Minoru 16.02.2009 23:44 #
Про alias действительно стоит узнать пораньше — это экономит много времени, если работать в консоли достаточно часто.
Также спасибо за . .bashrc — не знал.
Автору статьи плюс.

Касательно .bashrc и .bash_aliases: у меня в Debian Lenny .bash_aliases по умолчанию не было, но я расскоментировал в .bashrc строчки:
1
2
3
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi

создал .bash_aliases, вписал туда свои алиасы — и радуюсь.
mironov_orig 01.08.2011 11:15 #
Комменты и топик похерены переездом.
tn1 04.08.2011 05:20 #
.bashrc по умолчанию может и не читаться -> добавьте в .bash_login/.profile . .bashrc