Linux add alias to bashrc

Полезные 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»‘

Читайте также:  Как дискретную видеокарту сделать основной windows 10

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, то поделитесь ими с нами в комментариях!

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

Об авторе

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

10 комментариев

Кхе, кхе. Что будет — ежели сотворить текстовый файл с набором 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 по умолчанию
Обновление, наверное, лучше всё же скриптами. Тот же «

Читайте также:  Linux для слабых компьютеров 2021

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 и добавлять алиасы в него.

Хорошая статья. Я делаю дополнительный файл алиасов — host-specific. Модифицирую .bashrc добавив пару строчек.

[[ -f $HOME/.bashrc.$HOSTNAME ]] && . «$HOME/.bashrc.$HOSTNAME»

Хорошо бы еще написать статью про внедрение функций для расширения функционала. (PS прошу прощения если таковая уже иммется. )

Допустим, я сделал алиас apt=’aptitude’.
Как мне вызвать прежний apt (unalias не предлагать)?

Источник

sudo и alias в .bashrc

Предисловие

alias

/.bashrc alias‘ов для команд. Первым делом я назначил alias для команды ls, частенько я ей пользуюсь и почти на автомате вбиваю ls -l. Из той же книги я узнал что полезно указать еще параметр h, для более наглядного отображения размеров файлов, и вот что у меня получилось:
alias l=’ls -lh’
Казалось бы ничего особенного, но удобно блин.

Дальше я дочитал до способов объединения команд, и нашел интересный пример:
apt-get update && apt-get upgrade
Основная идея данной записи — выполнить обновление системы в случае удачного обновления списка пакетов. Так как сейчас у меня стоит бета Ubuntu 10.04 то обновляюсь я каждый день, поэтому решил добавить еще один alias:
alias uu=’apt-get update && apt-get upgrade’
Перезапускаю терминал, sudo uu, а он мне в ответ мол не знаю я команды uu. Не долго думая добавляю аналогичный alias в /root/.bashrc.
Перезапускаю терминал, sudo uu, а он мне опять тоже самое. И тут я задумался, а кто же ты тогда sudo?

Немного поразмыслив решил спросить у google, на что сразу получил несколько ответов, но не один у меня так и не заработал. Если кому интересно, предлагалось добавить alias в глобальный файл /etc/bash.bashrc, а так же вызывать sudo -E.

Простое и действенное решение подсказал знакомый гуру Linuxa — medvoodoo.
sudo — команда а alias‘ы обрабатывает сам bash, поэтому sudo не может понять чего от нее хотят. (Здесь я могу ошибаться, можете поправить меня в комментариях).
В результате мой alias uu выглядит следующим образом:
alias uu=’sudo apt-get update && sudo apt-get upgrade -y’

Надеюсь эта информация будет кому-то инересной/полезной.

Источник

Different Ways to Create and Use Bash Aliases in Linux

Alias in bash can be termed simply as a command or a shortcut that will run another command/program. Alias is very helpful when our command is very long and for frequently used commands. Over the course of this article, we are going to see how powerful is an alias and the different ways to set up an alias and use it.

Check Bash Aliases in Linux

Alias is a shell builtin command and you can confirm it by running:

Before jumping and setting up an alias we will see the configuration files involved. An alias can be set either at the “user-level” or “system level”.

Invoke your shell and simply type “alias” to see the list of defined alias.

Check List of Defined Linux Aliases

User-level aliases can be defined either in the .bashrc file or the .bash_aliases file. The .bash_aliases file is to group all your aliases into a separate file instead of putting it in the .bashrc file along with other parameters. Initially, .bash_aliases will not be available and we have to create it.

Читайте также:  Не могу найти hyper v windows 10

Create Bash Aliases File

Open the .bashrc file and look out for the following section. This section of code is responsible for checking if file .bash_aliases is present under the user home directory and load it whenever you initiate a new terminal session.

Bashrc Alias Definition

You can also create a custom alias file under any directory and add definition in either .bashrc or .profile to load it. But I will not prefer this and I choose to stick with grouping all my alias under .bash_aliases.

You can also add aliases under the .bashrc file. Look out for the alias section under the .bashrc file where it comes with some predefined aliases.

Bashrc Defined Aliases

Creating Alias in Linux

You can either create a temporary alias that will be stored only for your current session and will be destroyed once your current session ends or permanent alias which will be persistent.

The syntax for creating an alias in Linux.

For example, in a real scenario.

Open the terminal and create any alias command you desire. If you open another session then the newly created alias will not be available.

Create an Alias in Linux

To make the alias persistent, add it to the .bash_aliases file. You can use your favorite text editor or use the cat command or echo command to add an alias.

List Defined Aliases

You have to reload the .bash_aliases file for the changes to be effective in the current session.

Now if I run “nf” which is an alias for “neofetch” it will trigger the neofetch program.

Run Alias in Linux

An alias can come in handy if you wish to override the default behavior of any command. For demonstration, I will take an uptime command, that will display system uptime, the number of users logged in, and the system load average. Now I will create an alias that will override the behavior of the uptime command.

Override Default Behaviour of Command

From this example, you can conclude the precedence falls to bash aliases before checking and invoking the actual command.

Unchanged Command Behaviour

Removing an Alias in Linux

Now remove the uptime entry from the .bash_aliases file and reload the .bash_aliases file which will still print the uptime with alias definition. This is because the alias definition is loaded into the current shell session and we have to either start a new session or unset the alias definition by running the unalias command as shown in the below image.

Remove an Alias in Linux

Adding System-Wide Aliases

Till this point, we have seen how to set up an alias at the user level. To set an alias globally you can modify the “/etc/bash.bashrc” file and add aliases which will be effective globally. You need to have the elevated privilege to modify bash.bashrc file.

Alternatively, create a script under “/etc/profile.d/”. When you log in to a shell “/etc/profile” will run any script under profile.d before actually running

/.profile. This method will reduce the risk of messing up either /etc/profile or /etc/bash.bashrc file.

Below is the code grabbed from the /etc/profile that takes care of running any scripts that we put under /etc/profiles.d/. It will look out for any files with the .sh extension and run the source command.

Global Profile File

That’s it for this article. We have seen what is alias, the configuration files involved with the alias, and different ways to set up the alias locally and globally.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

We are thankful for your never ending support.

Источник

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