Alias Command in Linux: How To Save Your Time With It
If you handled cloud servers before, you probably have the same feeling:
It’s easy to use the ssh command to connect to a remote server. But it’s painful to always input the location of the key file on your terminal.
For example, if you connect to an AWS EC2 server through ssh , you have to input…
Полезные alias Linux
Alias Linux — это, по сути, ярлыки команд Linux. Команда alias позволяет пользователю запускать любую команду или даже группу команд, в том числе с опциями, параметрами и файлами, вводом одного слова или даже символа. Это очень удобно во многих ситуациях, например чтобы не вводить полностью команду при обновлении или же очень быстро перемещаться по каталогам.
В этой инструкции будет рассмотрена команда alias linux, а также полезные алиасы, которые без сомнения must have в каждой системе.
Команда alias
Чтобы посмотреть какие псевдонимы linux команд уже заданны в вашей системе просто выполните:
В выводе вы увидите что-то подобное:
Команда покажет все alias команд linux определенные для текущего пользователя. Вывод очень сильно зависит от вашего дистрибутива. Общий синтаксис команды выглядит следующим образом:
$ alias имя = «значение»
$ alias имя = «команда аргумент1 аргумент2»
$ alias имя = «/путь/к/исполняемому/файлу»
Вы можете создавать новые псевдонимы, просто выполняя эту команду в терминале. Но созданные таким образом алиасы linux будут работать только в этом терминале и только до его закрытия.
Давайте для примера создадим alias linux для такой часто используемой команды, как clear (очистить вывод терминала):
Теперь, чтобы очистить терминал достаточно выполнить:
Удалить созданный alias можно с помощью команды unalias:
Но как я уже сказал, такие alias команд linux сохраняются только до закрытия терминала. Поэтому их необходимо создавать в начале каждой терминальной сессии. Для этого можно записать все нужные команды в
/.bashrc. При запуске терминала, каждый раз выполняется этот скрипт, чтобы установить переменные окружения и подготовить оболочку. Таким образом добавив нужные строки в конец файла мы получим работающие alias linux в каждом терминале.
Продолжим создание alias для команды 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 l.=’ls -d .* —color=auto’
2. Перемещение по каталогам
Быстрое перемещение от текущей директории:
3. Вывод grep
Делаем вывод цветным:
alias grep=’grep —color=auto’
alias egrep=’egrep —color=auto’
alias fgrep=’fgrep —color=auto’
4. Калькулятор
Запускать калькулятор с поддержкой стандартной библиотеки mathlib:
5. Создание каталогов
Создавать дерево каталогов, если оно не существует:
alias mkdir=’mkdir -pv’
6. Вывод diff
Делаем вывод diff цветным:
7. Вывод mount
Сделаем вывод mount читаемым:
alias mount=’mount | column -t’
8. История
Сократим команды для экономии времени:
alias h=’history’
alias j=’jobs -l’
9. Информация и дата
alias path=’echo -e $
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=»sudo apt»
alias updatey=»sudo apt —yes»
Обновление одной командой:
alias update=’sudo apt update && sudo apt 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/bin/nginx -s reload’
alias nginxtest=’sudo /usr/bin/nginx -t’
alias lightyload=’sudo systemctl reload lighttpd’
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 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’
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 gpumeminfo=’grep -i —color memory /var/log/Xorg.0.log’
25. Утилита wget
Продолжать незавершенную загрузку по умолчанию:
alias wget=’wget -c’
26. Браузеры
alias ff=’/usr/bin/firefox’
alias chrome=’/usr/bin/google-chrome’
alias opera=’/usr/bin/opera’
alias chromium=’/usr/bin/chromium’
Браузер по умолчанию:
27. Правильные единицы измерения
Правильное отображение данных для free, df и du:
alias df=’df -H’
alias du=’du -ch’
alias free=’free -h’
Выводы
Если вы знаете другие полезные alias команд linux, то поделитесь ими с нами в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Похожие записи
Оцените статью
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.
18 комментариев к “Полезные alias Linux”
Кхе, кхе. Что будет — ежели сотворить текстовый файл с набором alias, который будучи вставленным в
/.bashrc после первой установки системы, выполнял бы обновление, удаление гостевого сеанса, открывал бы скрытые пункты автозагрузки? Список можно продолжить. Черновой работы подобного рода море, особенно в классической Ubuntu.
P.S. Не судите строго.
Интересно, но это уже не alias, а просто скрипт.
это и есть алиася. Или сделать /etc/profile.d/aliases.sh — рекомеднуют туда. Это для всех пользователей будет действовать.
Еще бы статью про функции, я их тоже в /etc/profile.d/файл помещаю. Но надо обязательно все проверить перед перезагрузкой.
И к функциям сделать bash-completion
Хмм. Можно попробовать
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», пропускающую алиасы при выполнении.
Ну и удобные алиасы для каждого всё равно будут своими.
Что бы не корёжить файл .bashrc, можно создать рядом файл .bash_aliases и добавлять алиасы в него.
Как уже сказал не надо писать алисы в дефолтный .bashrc , лучше всего создать рядом файл .bash_aliases и писать алиасы туда. А в .bashrc добавить пару строк (отсылку на bash_aliases):
/.bash_aliases
fi
Файл /home/имя_юзера/.bash_aliases будет выглядеть вот так:
# alias.sh
alias c=’clear’
#очистить консоль
alias ping=’ping -c 10′
#выполнить команду ping с количеством пакетов 10
alias x=»exit»
#выход из сеанса
зы: комментарии в файле не обязательны, даны просто для пояснения, если они нужны в файле их пишут под функцией и в начале строки ставят знак « # » (решётка)
Для новичков: знак «
» называется «тильда», обозначает Домашнюю папку пользователя, т.е.
/home/имя_юзера/.bash_aliases и
/.bash_aliases — это одно и тоже местонахождение файла.
Эти алиасы будут работать только от того пользователя, где они находятся. От другого пользователя и root они работать не будут. Можно сделать чтобы они работали везде, но это уже частное решение и то если оно требуется.
Хорошая статья. Я делаю дополнительный файл алиасов — host-specific. Модифицирую .bashrc добавив пару строчек.
[[ -f $HOME/.bashrc.$HOSTNAME ]] && . «$HOME/.bashrc.$HOSTNAME»
Хорошо бы еще написать статью про внедрение функций для расширения функционала. (PS прошу прощения если таковая уже иммется. )
Допустим, я сделал алиас apt=’aptitude’.
Как мне вызвать прежний apt (unalias не предлагать)?
Джентльменский набор команд Linux Часть 1
Закон Парето применим ко многим сферам, в том числе и к работе с терминалом Linux, ведь всего нескольких десятков команд позволит легко справляться с большинством задач. Мы выбрали 40 наиболее полезных команд, использование которых способно сильно облегчить жизнь при работе с Linux. Статья не претендует на статус истины в последней инстанции или максимально подробного руководства, а очередность команд обусловлена лишь алфавитным порядком.
Джентльменский набор команд Linux Часть 1:
- alias
- cat
- cd
- chmod
- chown
- curl
- df
1. alias
Команда alias создает «ярлык» другой команды или последовательности команд Linux.
Синтаксис команды alias:
alias позволяет:
- Быстрее вводить команды.
Исправлять частые опечатки.
Довольно распространенная ситуация, когда вместо команды ls вводится sl. В результате пользователь получает сообщение об ошибке:
С помощью команды alias можно исправить данную проблему:
Использования команды alias для последовательности команд:
В данном алиасе команда ps используется для вывода списка запущенных процессов, в котором grep ищет процессы, соответствующие параметру $1.
Стоит отметить, что команда alias по умолчанию работает лишь для текущей сессии командной строки. Т.е. если разлогиниться или открыть другой терминал, то созданные алиасы перестанут работать. Чтобы сделать их постоянными необходимо включить их в свой локальный файл домашней директории
/.bashrc (в случае использования bash в качестве командной оболочки).
2. cat
Команда cat выводит содержание файлов в окне терминала.
cat позволяет:
- Посмотреть содержание небольших файлов, что быстрее, чем в редакторе.
- Исключить ошибки случайного изменения файла при просмотре.
- Склеить несколько файлов.
Синтаксис команды cat:
Чтобы посмотреть содержимое файла .bash_log_out через терминал нужно ввести:
Чтобы склеить несколько файлов с помощью команды cat нужно просто указать названия файлов в аргументах, а результаты записать в новый файл. Например:
Основные опции cat:
- -b — нумеровать только строки с содержимым;
- -E — выводить $ в конец каждой строки;
- -n — нумеровать все строки;
- -s – удалять повторы пустых строк;
- -T — выводить табуляции в виде ^I.
cd изменяет текущий каталог, переводя в другое место файловой системы.
Синтаксис команды cd:
Чтобы перейти в подкаталог домашней папки нужно просто указать после команды название директории (img для примера):
Если нужно попасть в другой каталог нужно указать путь:
Чтобы быстро попасть в домашний каталог нужно указать вместо имени
Вернуться в предыдущую папку:
Перейти в родительский каталог:
Перемещение в родительский каталог текущего родительского каталога
4. chmod
Команда chmod устанавливает права доступа к файлу или каталогу.
chmod позволяет:
- Разделить привилегии между пользователями.
- Ограничить доступ к нежелательным файлам и папкам.
- Контролировать доступные сервисам действия и прочее.
Синтаксис команды chmod:
Если вывести список папок и файлов командой ls с параметром –l, то можно увидеть нечто подобное:
Первый символ означает:
- «-» — является файлом;
- «d» — является каталогом.
Остальная часть строки в 9 символов разбивается на три группы по 3 символа в каждой:
- Первые 3 символа – права доступа к файлам владельца (-rwx——).
- Вторые 3 символа – права доступа к файлам группы (—-rwx—).
- Последние 3 символа – разрешения для других (——-rwx).
- r – Чтение.
- w – Запись.
- x – Выполнение.
Если какой-то из символов отсутствует и вместо него указан «-», тогда нет доступа к данному действию.
Также задать права доступа можно с помощью цифр:
- 0 – нет прав (-);
- 1 – только выполнение (—x);
- 2 – только запись (-w-);
- 3 – запись и выполнение (w-x);
- 4 – только чтение (r—);
- 5 – чтение и выполнение (r-x);
- 6 – чтение и запись (rw-);
- 7 – чтение, запись и выполнение (rwx).
Например, у файла «ex.txt» указаны все права:
Нужно изменить их на:
- Пользователь – все права (7 или rwx).
- Группа – чтение и запись (6 или rw-).
- Другим – чтение и выполнение (5 или r-x).
Тогда вводим следующую команду:
5. chown
Команда chown (change owner) позволяет менять владельца и группу владельца:
- Файлов.
- Каталогов.
- Ссылок.
Синтаксис команды chown:
Если в поле пользователя указать группу через двоеточие (пользователь: группа), тогда изменится еще и группа.
Основные опции команды chown:
- -c — детальный вывод всех выполняемых изменений;
- -f — минимум информации (убирает ошибки из выдачи);
- -h — изменять права символических ссылок, а файлы к которым они ведут не трогать;
- -R — рекурсивная обработка всех подкаталогов;
- -L — переходить по всем символическим ссылкам на директории.
Изменить владельца папки ex1 на user:
Изменить на владельца user и группу users:
Чтобы изменения применялись не только к данному каталогу, но и всем подкаталогам внутри, необходимо добавить опцию -R:
6. curl
Утилита curl извлекает информацию и файлы с url-страниц.
Будет полезна тем, кто часто загружает:
- Скрипты.
- Исполняемые файлы программ.
- Архивы.
С помощью команды curl это можно делать не через браузер, а прямо из терминала, что дает возможность автоматизировать процесс.
На самом деле curl является не просто утилитой, а целым набором библиотек, способными реализовать все основные возможности по работе c передачей файлов и url-страницами.
Curl поддерживает работу с протоколами:
- FTP
- FTPS
- HTTP
- HTTPS
- TFTP
- SCP
- SFTP
- Telnet
- DICT
- LDAP
- POP3
- IMAP
- SMTP
Синтаксис утилиты:
curl опции ссылка
Загрузка файлов с помощью curl
Самая распространенная задача для утилиты curl – это загрузка файлов. Чтобы скачать файл достаточно передать утилите имя файла или адрес страницы, например:
Таким образом содержимое файла будет отправлено на стандартный вывод. Для записи его в файл (для примера ex.txt) нужно ввести:
Чтобы скачанный файл назывался так же, как и на сервере необходимо использовать опцию -O:
Стоит отметить, что не во всех дистрибутивах Linux утилита предустановлена по умолчанию.
Команда df позволяет выводить:
- Список подключенных устройств
- Информацию о занятом месте
- Точку монтирования
Синтаксис команды df:
Основные опции df:
- -h — выводить размеры в читаемом виде Мбайтах или Гбайтах;
- -x – исключить из вывода указанные файловые системы.
Например, необходимо получить информацию в читаемом виде для раздела /dev/sdb7, тогда вводим:
Чтобы игнорировать псевдо-файловые системы squashfs, создаваемые при установке приложения с помощью команды snap, вводим:
Лучший способ освоить новые команды – больше практиковаться, а лучше всего это делать на серверах компании AlexHost, где:
Yusuf’s Blog
Aliases are special shortcuts that we can set ourselves to run commands or groups of commands in the unix world.
As Unix users, we sometimes need to run a long or complex command very often. At such times, typing the same command over and over can turn into torture. In these cases, it will be much more efficient to define and use aliases.
So how exactly are aliases defined? Let’s start with the syntax first.
1. Syntax
- The first alias keyword is a constant.
- The name keyword cannot contain spaces. This will be represent your shortcut.
- hint: you can use hyphens in long name definitions.
2. List Exist Alias
We can run «alias» command in terminal to list predefined alias.
As seen in the Ubuntu operating system, there are already some aliases defined.
3. Creating Alias
Creating an alias is not a very difficult task. We can create two different types of aliases, one of them is temporary alias and the other one is permanent alias.
3.1 Temporary Aliases
Temporary aliases are only valid for the terminal that is open. After you close the terminal, you will see that all the aliases you defined disappear. First, let’s look at the defined aliases with the «alias» command.
Now, let’s define an alias to change the current directory to the desktop directory in the terminal that we open. We can use the following syntax for this alias.
Let’s see the alias we defined and try it by running it.
As you can see, we were able to go directly to the desktop directory.Confirm that the alias is disappeared when the terminal is closed.
3.2 Permanent Aliases
Unlike temporary aliases, permanent aliases are not dependent on whether the terminal is closed, or whether the computer is turned off. Then where are the persistent aliases stored ?
Permanent aliases can be stored in the following files (It depends on which shell you’re using);
It is stored in
/.bashrc file by default in ubuntu operating system. So let’s see what’s inside the
/.bashrc file. I will use vim editor to edit at the same time. You can use gedit, nano or any text editor to edit file.
You can see the permanent aliases above. Now let’s add a permanent alias ourselves. For this, I will go to the bottom of the opened file and define the alias by following the syntax rules we have stated above.
I again defined an alias to change current directory to desktop faster. Then I saved the changes I made and closed the file. After that, there is only one thing left to do and that is to run the following command to use the updated version of the «
If you do not update the file you will be using the old version of the file and you will not be able to run new alias.
Now we can run the alias that we create in another terminal.
As you can see, we were able to go directly to the desktop directory. Confirm that the alias we created works in another terminal.
4. Useful Aliases
In this section I want to show you a few useful alias, some of which I also use.
4.1 General Purpose Aliases
Here are a few alias that can be used in general purpose.
4.2 Directory Aliases
You can define aliases for directories that you constantly change.
4.3 Script Starter Aliases
You can define aliases for scripts that you run often.
4.4 Git Aliases
If you are using git via terminal like me, you can define aliases similar to the ones below.
4.5 SSH Aliases
You can name ssh commands with aliases instead of memorizing the IP’s of the servers you connect using an SSH connection.