Полезные alias Linux
Alias Linux – это, по сути, ярлыки команд Linux. Команда alias позволяет пользователю запускать любую команду или даже группу команд, в том числе с опциями, параметрами и файлами, вводом одного слова или даже символа. Это очень удобно во многих ситуациях, например чтобы не вводить полностью команду при обновлении или же очень быстро перемещаться по каталогам.
Чтобы посмотреть какие псевдонимы linux команд уже заданны в вашей системе просто выполните:
В выводе вы увидите что-то подобное:
alias beep='echo -en "\007"'
alias cd..='cd ..'
alias dir='ls -l'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
Команда покажет все alias команд linux определенные для текущего пользователя. Вывод очень сильно зависит от вашего дистрибутива. Общий синтаксис команды выглядит следующим образом:
$ alias имя=”значение”
$ alias имя=”команда аргумент1 аргумент2″
$ alias имя=”/путь/к/исполняемому/файлу”
Вы можете создавать новые псевдонимы, просто выполняя эту команду в терминале. Но созданные таким образом алиасы linux будут работать только в этом терминале и только до его закрытия.
Давайте для примера создадим alias linux для такой часто используемой команды, как clear (очистить вывод терминала):
$ alias c='clear'
Теперь, чтобы очистить терминал достаточно выполнить:
$ с
Удалить созданный alias можно с помощью команды unalias:
$ unalias c
Но как я уже сказал, такие alias команд linux сохраняются только до закрытия терминала. Поэтому их необходимо создавать в начале каждой терминальной сессии. Для этого можно записать все нужные команды в ~/.bashrc. При запуске терминала, каждый раз выполняется этот скрипт, чтобы установить переменные окружения и подготовить оболочку. Таким образом добавив нужные строки в конец файла мы получим работающие alias linux в каждом терминале.
Продолжим создание alias для команды clear:
$ vi ~/.bashrc
Добавьте эту строку в конец файла:
alias c='clear'
Затем сохраните и закройте редактор (:wq). Чтобы проверить работоспособность запустите новый терминал. Если вы хотите чтобы ваши алиасы linux были доступны для всех пользователей, необходимо использовать файл /etc/bashrc.
Поскольку .bashrc, это обычный bash скрипт, перед нами открываются большие возможности. Например мы можем добавить alias команд с использованием sudo, если текущий пользователь не root:
if [ $UID -ne 0 ]; then
alias reboot='sudo reboot'
alias update='sudo apt-get upgrade'
fi
Так же само, мы можем менять команды алиасов в зависимости от дистрибутива:
_myos="$(uname)"
case $_myos in
Linux) alias foo='/path/to/linux/bin/foo';;
FreeBSD|OpenBSD) alias foo='/path/to/bsd/bin/foo' ;;
SunOS) alias foo='/path/to/sunos/bin/foo' ;;
*) ;;
esac
Чтобы удалить alias достаточно просто удалить запись о нем, из того файла в который вы ее добавили. Мы рассмотрели основы добавления alias linux, теперь давайте перейдем к списку полезных алиасов linux.
Полезные alias Linux
1. Вывод ls
Цветной вывод:
alias ls='ls --color=auto'
Показывать скрытые файлы и представлять вывод в виде списка:
alias ll='ls -la'
Показать только скрытые файлы:
alias l.='ls -d .* --color=auto'
2. Перемещение по каталогам
Исправляем опечатку:
alias cd..='cd ..'
Быстрое перемещение от текущей директории:
alias ..='cd ..'
alias ...='cd ../../../'
alias ....='cd ../../../../'
alias .....='cd ../../../../'
alias .4='cd ../../../../'
alias .5='cd ../../../../..'
3. Вывод grep
Делаем вывод цветным:
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
4. Калькулятор
Запускать калькулятор с поддержкой стандартной библиотеки mathlib:
alias bc='bc -l'
5. Создание хеша
Создать хеш sha1:
alias sha1='openssl sha1'
6. Создание каталогов
Создавать дерево каталогов, если оно не существует:
alias mkdir='mkdir -pv'
7. Вывод diff
Делаем вывод diff цветным:
alias diff='colordiff'
8. Вывод mount
Сделаем вывод mount читаемым:
alias mount='mount |column -t'
9. Ярлыки
Сократим команды для экономии времени:
alias h='history'
alias j='jobs -l'
10. Информация и дата
alias path='echo -e ${PATH//:/\\n}'
alias now='date +"%T"'
alias nowtime=now
alias nowdate='date +"%d-%m-%Y"'
11. Редактор Vim
alias команд linux для использования редактора vim по умолчанию:
alias vi=vim
alias svi='sudo vi'
alias vis='vim "+set si"'
alias edit='vim'
12. Ping
Посылать только пять запросов:
alias ping='ping -c 5'
Интервал между запросами одна секунда:
alias fastping='ping -c 100 -s.2'
13. Открытые порты
alias ports='netstat -tulanp'
14. Управление iptables
alias iptlist='sudo /sbin/iptables -L -n -v --line-numbers'
alias iptlistin='sudo /sbin/iptables -L INPUT -n -v --line-numbers'
alias iptlistout='sudo /sbin/iptables -L OUTPUT -n -v --line-numbers'
alias iptlistfw='sudo /sbin/iptables -L FORWARD -n -v --line-numbers'
alias firewall=iptlist
15. Curl
Получить заголовки сервера:
alias header='curl -I''
Проверять поддержку сжатия на сервере:
alias headerc='curl -I --compress'
16. Работа с файлами
Не удалять корень и предупреждать об удалении файлов:
alias rm='rm -I --preserve-root'
Предупреждения:
alias mv='mv -i'
alias cp='cp -i'
alias ln='ln -i'
Защита от изменения прав для /:
alias chown='chown --preserve-root'
alias chmod='chmod --preserve-root'
alias chgrp='chgrp --preserve-root'
17. Обновление Debian
Установка пакета:
alias apt-get="sudo apt-get"
alias updatey="sudo apt-get --yes"
Обновление одной командой:
alias update='sudo apt-get update && sudo apt-get upgrade'
18. Обновление RedHat
В семействе дистрибутивов Red Hat используется пакетный менеджер yum:
alias update='yum update'
alias updatey='yum -y update'
19. Стать суперпользователем
alias root='sudo -i'
alias su='sudo -i'
20. Выключение
Выполнять команды выключения через sudo:
alias reboot='sudo /sbin/reboot'
alias poweroff='sudo /sbin/poweroff'
alias halt='sudo /sbin/halt'
alias shutdown='sudo /sbin/shutdown'
21. Мультимедиа
Открыть видео в текущей директории:
alias playavi='mplayer *.avi'
alias vlc='vlc *.avi'
Добавить в плейлист музыку из текущей директории:
alias playwave='for i in *.wav; do mplayer "$i"; done'
alias playogg='for i in *.ogg; do mplayer "$i"; done'
alias playmp3='for i in *.mp3; do mplayer "$i"; done'
22. Системное администрирование
Работать с интерфейсом eth1:
alias dnstop='dnstop -l 5 eth1'
alias vnstat='vnstat -i eth1'
alias iftop='iftop -i eth1'
alias tcpdump='tcpdump -i eth1'
alias ethtool='ethtool eth1'
Работать с интерфейсом wlan0 по умолчанию:
alias iwconfig='iwconfig wlan0'
23. Информация о системе
Использование памяти:
alias meminfo='free -m -l -t'
Показать процессы потребляющие больше всего памяти:
alias psmem='ps auxf | sort -nr -k 4'
alias psmem10='ps auxf | sort -nr -k 4 | head -10'
Показать процессы использующие процессор:
alias pscpu='ps auxf | sort -nr -k 3'
alias pscpu10='ps auxf | sort -nr -k 3 | head -10'
Информация о процессоре:
alias cpuinfo='lscpu'
Посмотреть память видеокарты:
alias gpumeminfo='grep -i --color memory /var/log/Xorg.0.log'
24. Wget
Продолжать незавершенную загрузку по умолчанию:
alias wget='wget -c'
25. Алиасы для ssh
Вы можете создавать псевдонимы Linux команд для подключений по ssh с помощью конфигурационного файла OpenSSL – ~/.ssh/config. Не нужно этого делать с помощью обычных алиасов, здесь функционал шире. Например:
Host server10
Hostname 1.2.3.4
IdentityFile ~/backups/.ssh/id_dsa
user foobar
Port 30000
ForwardX11Trusted yes
TCPKeepAlive yes
Теперь подключаемся:
$ ssh server10
26. Другие
Правильное отображение для df и du:
alias df='df -H'
alias du='du -ch'
atop по умолчанию:
alias top='atop'