Полезные alias Linux | Losst

Полезные alias Linux

Alias Linux - это, по сути, ярлыки команд Linux. Команда alias позволяет пользователю запускать любую команду или даже группу команд, в том числе с опциями, параметрами и файлами, вводом одного слова или даже символа. Это очень удобно во многих ситуациях, например чтобы не вводить полностью команду при обновлении или же очень быстро перемещаться по каталогам.

В этой инструкции будет рассмотрена команда alias linux, а также полезные алиасы, которые без сомнения must have в каждой системе.

Команда alias

Чтобы посмотреть какие псевдонимы linux команд уже заданны в вашей системе просто выполните:

$ alias

В выводе вы увидите что-то подобное:

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

Вы можете добавить в своей системе любые или даже все эти алиасы 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'

6. Вывод diff

Делаем вывод diff цветным:

alias diff='colordiff'

7. Вывод mount

Сделаем вывод mount читаемым:

alias mount='mount |column -t'

8. Ярлыки

Сократим команды для экономии времени:

alias h='history'
alias j='jobs -l'

9. Информация и дата

alias path='echo -e ${PATH//:/\\n}'
alias now='date +"%T"'
alias nowtime=now
alias nowdate='date +"%d-%m-%Y"'

10. Редактор Vim

alias команд linux для использования редактора vim по умолчанию:

alias vi=vim
alias svi='sudo vi'
alias vis='vim "+set si"'
alias edit='vim'

11. Ping

Посылать только пять запросов:

alias ping='ping -c 5'

Интервал между запросами одна секунда:

alias fastping='ping -c 100 -s.2'

12. Открытые порты

alias ports='netstat -tulanp'

13. Wakeup

Будим серверы в режиме сна по mac адресу с помощью утилиты wakeonlan:

alias wakeupnas01='/usr/bin/wakeonlan 00:11:32:11:15:FC'
alias wakeupnas02='/usr/bin/wakeonlan 00:11:32:11:15:FD'
alias wakeupnas03='/usr/bin/wakeonlan 00:11:32:11:15:FE'

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 nginxreload='sudo /usr/local/nginx/sbin/nginx -s reload'
alias nginxtest='sudo /usr/local/nginx/sbin/nginx -t'
alias lightyload='sudo /etc/init.d/lighttpd reload'
alias lightytest='sudo /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf -t'
alias httpdreload='sudo /usr/sbin/apachectl -k graceful'
alias httpdtest='sudo /usr/sbin/apachectl -t && /usr/sbin/apachectl -t -D DUMP_VHOSTS'

22. Резервное копирование

alias backup='sudo /home/scripts/admin/scripts/backup/wrapper.backup.sh --type local --taget /raid1/backups'

23. Мультимедиа

Открыть видео в текущей директории:

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'

Открыть музыку из устройства nas:

alias nplaywave='for i in /nas/multimedia/wave/*.wav; do mplayer "$i"; done'
alias nplayogg='for i in /nas/multimedia/ogg/*.ogg; do mplayer "$i"; done'
alias nplaymp3='for i in /nas/multimedia/mp3/*.mp3; do mplayer "$i"; done'

23. Системное администрирование

Работать с интерфейсом 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'

24. Информация о системе

Использование памяти:

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'

25. Управление роутером

Перезагрузить роутер:

alias rebootlinksys="curl -u 'admin:my-super-password' 'http://192.168.1.2/setup.cgi?todo=reboot'"

Или так:

alias reboottomato="ssh admin@192.168.1.1 /sbin/reboot"

27. Wget

Продолжать незавершенную загрузку по умолчанию:

alias wget='wget -c'

28. Браузеры

Сокращения

alias ff4='/opt/firefox4/firefox'
alias ff13='/opt/firefox13/firefox'
alias chrome='/opt/google/chrome/chrome'
alias opera='/opt/opera/opera'

Браузер по умолчанию:

alias browser=chrome

29. Алиасы для 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

30. Другие

Правильное отображение для df и du:

alias df='df -H'
alias du='du -ch'

atop по умолчанию:

alias top='atop'

Запуск nfs:

alias nfsrestart='sync && sleep 2 && /etc/init.d/httpd stop && umount netapp2:/exports/http && sleep 2 && mount -o rw,sync,rsize=32768,wsize=32768,intr,hard,proto=tcp,fsc natapp2:/exports /http/var/www/html && /etc/init.d/httpd start'

Состояние кеширующего сервера:

alias mcdstats='/usr/bin/memcached-tool 10.10.27.11:11211 stats'
alias mcdshow='/usr/bin/memcached-tool 10.10.27.11:11211 display'

Выводы

Если вы знаете другие полезные alias команд linux, то поделитесь ими с нами в комментариях!

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую OpenSUSE. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.

Ваше имя тоже может быть здесь. Как? Пишите для нас! Смотрите подробнее как стать автором Losst.

Оцените статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (8 оценок, среднее: 5,00 из 5)
Загрузка...

  4 comments for “Полезные alias Linux

  1. Май 17, 2016 at 5:10 дп

    Кхе, кхе… Что будет — ежели сотворить текстовый файл с набором alias, который будучи вставленным в ~/.bashrc после первой установки системы, выполнял бы обновление, удаление гостевого сеанса, открывал бы скрытые пункты автозагрузки? Список можно продолжить… Черновой работы подобного рода море, особенно в классической Ubuntu.
    P.S. Не судите строго. 😉

    • Май 17, 2016 at 3:06 пп

      Интересно, но это уже не alias, а просто скрипт…

  2. apcel
    Май 17, 2016 at 10:17 пп

    Хмм. Можно попробовать
    alias sizes=»du —summarize —human-readable *»
    df -h и free -h по умолчанию
    Обновление, наверное, лучше всё же скриптами. Тот же «~root/update » лично у меня запускает что-то вида emerge -DuNv$1 $2 —keep-going @world && emerge -vD$1 $2 —depclean && emerge @preserved-rebuild && revdep-rebuild && beep -f 2000 -l 50 || beep -f 100 -l 150″ плюс записывает время начала выполнения, time разных процессов обновления, запускает пакетный менеджер с нужными nice и ionice, и так далее. В перспективе можно прикрутить к этому cgroups, чтоб уж точно не поджимал по быстродействию, и цветное перенаправление во временные файлы для дальнейшего курения в случае ошибок… А запускаться всё равно будет так же. И не надо писать лютый однострочник с сомнительной поддержкой переменных и прочего.

    Введенные на не_той раскладе команды, алиас запуска не умеющего в rc-файлы эмулятора терминала, sublime-text=»/opt/….», и так далее. Простор огромен.

    //а, и ещё манпейджи говорят про интересные применения в плане чтения истории команд плюс команду «type», показывающую текущие алиасы для команды, и «command», пропускающую алиасы при выполнении.

    Ну и удобные алиасы для каждого всё равно будут своими.

  3. BraVo.123
    Февраль 6, 2017 at 2:06 пп

    Что бы не корёжить файл .bashrc, можно создать рядом файл .bash_aliases и добавлять алиасы в него.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: