Difference between revisions of "Aliases in .bashrc/ru"

(Created page with "==Что такое .bashrc? Что такое альяс?== * '''.bashrc''' - это '''конфигурационный файл''' для bash, интерпретатора...")
 
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
__TOC__
__TOC__
==Что такое .bashrc? Что такое альяс?==
==Что такое bashrc? Что такое альяс(alias)?==
* '''.bashrc''' - это '''конфигурационный файл''' для bash, интерпретатора команд и оболочки linux.
* '''.bashrc''' - это ''конфигурационный файл'' для bash, интерпретатора команд и оболочки linux.
* '''Альяс''' - это '''заменитель (полной) команды'''. Его можно рассматривать как ярлык.
* '''Альяс''' - это ''заменитель (полной) команды''. Его можно рассматривать как ярлык.
* '''.bashrc''' находится в '''домашнем каталоге''' пользователя ( ~ ). Это скрытый файл, чтобы увидеть его - отобразите скрытые файлы в файловом менеджере или используйте '''ls -a'''.
* '''.bashrc''' находится в ''домашнем каталоге'' пользователя ( ~ ). Это скрытый файл, чтобы увидеть его - отобразите скрытые файлы в файловом менеджере или используйте '''ls -a'''.
==Бэкап текущего .bashrc==
==Бэкап текущего .bashrc==
Может быть полезно сделать резервную копию ~/.bashrc перед его редактированием, так как это позволяет легко восстановиться после непредвиденных ситуаций. Чтобы сделать резервную копию текущего .bashrc . Откройте терминал и выполните
Может быть полезно сделать резервную копию ~/.bashrc перед его редактированием, так как это позволяет легко восстановиться после непредвиденных ситуаций. Чтобы сделать резервную копию текущего .bashrc . Откройте терминал и выполните
Line 11: Line 11:
{{UserCmd|command=cp -i ~/.bashrc.bak ~/.bashrc}}
{{UserCmd|command=cp -i ~/.bashrc.bak ~/.bashrc}}
==Примечание==
==Примечание==
Любые изменения, внесенные в .bashrc, не будут иметь эффекта на все открытые в данный момент окна терминала. Чтобы проверить только что внесенные изменения в .bashrc, откройте новый терминал или используйте команду:
Любые изменения, внесенные в ~/.bashrc, не будут иметь эффекта на все открытые в данный момент окна терминала. Чтобы проверить только что внесенные изменения в .bashrc, откройте новый терминал или используйте команду:
{{UserCmd|command=source .bashrc}}.
{{UserCmd|command=source ~/.bashrc}}.
== Примеры альясов ==
== Примеры альясов ==
Альясы могут превратить сложную командную строку в простую пользовательскую команду, которую можно набрать в терминале.  
Альясы могут превратить сложную командную строку в простую пользовательскую команду, которую можно набрать в терминале.  
В файл .bashrc можно добавить следующие команды.
=== Стандартный синтаксис ===
Создание альясов в bash очень просто. Синтаксис выглядит следующим образом:
{{File|file=~/.bashrc|
content=<pre>...
alias название_alias="команда_для_запуска"
...</pre>}}
=== Для обновления системы ===
=== Для обновления системы ===
Для обновления системы с помощью pacman используется следующая команда  
Для обновления системы с помощью pacman используется следующая команда  
{{UserCmd|command=sudo pacman -Syu}}.
{{UserCmd|command=sudo pacman -Syu}}.
Она может стать альясом в .bashrc с помощью
Она может стать альясом в ~/.bashrc с помощью
{{File|file=~/.bashrc|
{{File|file=~/.bashrc|
content=<pre>...
content=<pre>...
Line 32: Line 37:
...</pre>}}
...</pre>}}
=== Для редактирования часто используемых файлов ===
=== Для редактирования часто используемых файлов ===
Для редактирования самого '''.bashrc''' и автоматической перезагрузки конфигурационного файла bash (чтобы изменения, внесенные в .bashrc, могли быть реализованы в текущей терминальной сессии)
Для редактирования самого '''~/.bashrc''' и автоматической перезагрузки конфигурационного файла bash (чтобы изменения, внесенные в .bashrc, могли быть реализованы в текущей терминальной сессии)
{{File|file=~/.bashrc|
{{File|file=~/.bashrc|
content=<pre>...
content=<pre>...
Line 53: Line 58:
alias grubup="sudo update-grub"
alias grubup="sudo update-grub"
...</pre>}}
...</pre>}}
==Вывод==
==Создание альясов Bash с аргументами (функции Bash)==
Этот список не является исчерпывающим. Почти все, что часто используется, можно сократить с помощью альясов.
Иногда вам может понадобиться создать альяс, принимающий один или несколько аргументов. Вот тут-то и пригодятся функции bash.
 
Синтаксис для создания функции bash очень прост. Они могут быть объявлены в двух различных форматах:
{{File|file=~/.bashrc|
content=<pre>...
имя_функции (){
  [команды]
}
...</pre>}}
или
{{File|file=~/.bashrc|
content=<pre>...
function имя_функции {
  [команды]
}
...</pre>}}
Чтобы просто передать любое количество аргументов в функцию bash, поместите их сразу после имени функции, разделив пробелом. Передаваемые параметры - это $1, $2, $3 и т.д., соответствующие позициям параметра после имени функции. Переменная $0 зарезервирована для имени функции.
 
Давайте создадим простую функцию bash, которая будет создавать каталог и затем переходить в него:
{{File|file=~/.bashrc|
content=<pre>...
mkcd ()
{
  mkdir -p -- "$1" && cd -P -- "$1"
}
...</pre>}}
Теперь вместо того, чтобы использовать mkdir для создания нового каталога, а затем cd для перемещения в этот каталог, вы можете просто набрать:
{{UserCmd|command=mkcd new_directory}}.
==Хранение альяса bash в другом файле==
Bash позволяет добавлять локальные альясы в Ваш ~/.bashrc. Для этого создайте файл ~/.bash_aliases и добавьте его содержимое в Ваш файл ~/.bashrc:
{{File|file=~/.bashrc|
content=<pre>...
if [ -e $HOME/.bash_aliases ]; then
    source $HOME/.bash_aliases
fi
...</pre>}}
Теперь вы можете добавить любые альясы в Ваш ~/.bash_aliases и затем загрузить их в свою Bash-сессию с помощью команды source ~/.bashrc.
==Заключение==
Этот список не является исчерпывающим. Почти все, что часто используется, можно сократить с помощью альяса.
==Смотрите также==
==Смотрите также==
[https://www.gnu.org/software/bash/manual/html_node/index.html Документация по Bash]
[https://www.gnu.org/software/bash/manual/html_node/index.html Документация по Bash]
[https://wiki.archlinux.org/title/Bash_(Русский)#Псевдонимы ArchWiki]
[[Category:Contents Page{{#translation:}}]]
[[Category:Contents Page{{#translation:}}]]
[[Category:Terminal{{#translation:}}]]
[[Category:Terminal{{#translation:}}]]

Latest revision as of 07:42, 30 December 2022

Other languages:
English • ‎Türkçe • ‎português do Brasil • ‎русский

Что такое bashrc? Что такое альяс(alias)?

  • .bashrc - это конфигурационный файл для bash, интерпретатора команд и оболочки linux.
  • Альяс - это заменитель (полной) команды. Его можно рассматривать как ярлык.
  • .bashrc находится в домашнем каталоге пользователя ( ~ ). Это скрытый файл, чтобы увидеть его - отобразите скрытые файлы в файловом менеджере или используйте ls -a.

Бэкап текущего .bashrc

Может быть полезно сделать резервную копию ~/.bashrc перед его редактированием, так как это позволяет легко восстановиться после непредвиденных ситуаций. Чтобы сделать резервную копию текущего .bashrc . Откройте терминал и выполните

user $ cp ~/.bashrc ~/.bashrc.bak COPY TO CLIPBOARD


.

Оригинальный .bashrc может быть восстановлен с помощью команды

user $ cp -i ~/.bashrc.bak ~/.bashrc COPY TO CLIPBOARD


Примечание

Любые изменения, внесенные в ~/.bashrc, не будут иметь эффекта на все открытые в данный момент окна терминала. Чтобы проверить только что внесенные изменения в .bashrc, откройте новый терминал или используйте команду:

user $ source ~/.bashrc COPY TO CLIPBOARD


.

Примеры альясов

Альясы могут превратить сложную командную строку в простую пользовательскую команду, которую можно набрать в терминале.

Стандартный синтаксис

Создание альясов в bash очень просто. Синтаксис выглядит следующим образом:

~/.bashrc
...
alias название_alias="команда_для_запуска"
...

Для обновления системы

Для обновления системы с помощью pacman используется следующая команда

user $ sudo pacman -Syu COPY TO CLIPBOARD


.

Она может стать альясом в ~/.bashrc с помощью

~/.bashrc
...
alias pacup="sudo pacman -Syu"
...

Для обновления пакетов, установленных из AUR через pamac, используется команда

user $ pamac upgrade --aur COPY TO CLIPBOARD


Она может стать альясом

~/.bashrc
...
alias aup="pamac upgrade --aur"
...

Для редактирования часто используемых файлов

Для редактирования самого ~/.bashrc и автоматической перезагрузки конфигурационного файла bash (чтобы изменения, внесенные в .bashrc, могли быть реализованы в текущей терминальной сессии)

~/.bashrc
...
alias bashrc="nano ~/.bashrc && source ~/.bashrc"
...

Для редактирования /etc/fstab

~/.bashrc
...
alias fstab="sudo nano /etc/fstab"
...

Для редактирования /etc/default/grub

~/.bashrc
...
alias grub="sudo nano /etc/default/grub"
...

Обновление GRUB

Чтобы обновить загрузчик grub с помощью команды sudo update-grub

~/.bashrc
...
alias grubup="sudo update-grub"
...

Создание альясов Bash с аргументами (функции Bash)

Иногда вам может понадобиться создать альяс, принимающий один или несколько аргументов. Вот тут-то и пригодятся функции bash.

Синтаксис для создания функции bash очень прост. Они могут быть объявлены в двух различных форматах:

~/.bashrc
...
имя_функции (){
  [команды]
}
...

или

~/.bashrc
...
function имя_функции {
  [команды]
}
...

Чтобы просто передать любое количество аргументов в функцию bash, поместите их сразу после имени функции, разделив пробелом. Передаваемые параметры - это $1, $2, $3 и т.д., соответствующие позициям параметра после имени функции. Переменная $0 зарезервирована для имени функции.

Давайте создадим простую функцию bash, которая будет создавать каталог и затем переходить в него:

~/.bashrc
...
mkcd ()
{
  mkdir -p -- "$1" && cd -P -- "$1"
}
...

Теперь вместо того, чтобы использовать mkdir для создания нового каталога, а затем cd для перемещения в этот каталог, вы можете просто набрать:

user $ mkcd new_directory COPY TO CLIPBOARD


.

Хранение альяса bash в другом файле

Bash позволяет добавлять локальные альясы в Ваш ~/.bashrc. Для этого создайте файл ~/.bash_aliases и добавьте его содержимое в Ваш файл ~/.bashrc:

~/.bashrc
...
if [ -e $HOME/.bash_aliases ]; then
    source $HOME/.bash_aliases
fi
...

Теперь вы можете добавить любые альясы в Ваш ~/.bash_aliases и затем загрузить их в свою Bash-сессию с помощью команды source ~/.bashrc.

Заключение

Этот список не является исчерпывающим. Почти все, что часто используется, можно сократить с помощью альяса.

Смотрите также

Документация по Bash

ArchWiki