суббота, 30 декабря 2017 г.

20 удобных псевдонимов(aliases) для Bash Shell.

Псевдонимы(alias) в bash служат упрощения работы с командной строкой, псевдонимы не заменяют основные команды, а лишь служат "ссылками" на них. Вы можете добавить персональные псевдонимы команд в ~/.bashrc файл, это позволит обеспечить индивидуальные настройки для конкретного пользователя и удобный перенос привычных команд на новые системы.

Как вывести список используемых профилем псевдонимов?

Наберите в командной строке команду alias:

$ alias

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

alias ..='cd ..'
alias amazonbackup='s3backup'
alias apt-get='sudo apt-get'
...

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

Как создать псевдоним команд (bash alias)?

Используя следующий формат для создания псевдонимов:

alias name=value
alias name='command'
alias name='command arg1 arg2'
alias name='/path/to/script'
alias name='/path/to/script.pl arg1'

Например мы создадим псевдоним c при вводе которого будет выполнятся команда очистки экрана терминала - clear:

$ alias c=clear

теперь если в терминале написать c и нажать ENTER, выполнится команда clear:

$ c

Если вы создали более сложный псевдоним например с дополнительными параметрами:

$ alias ls='ls -l'

но в какой-то момент времени вам необходимо выполнить команду указанную в alias без параметров, поставьте обратный слеш перед командой:

$ \ls

таким образом команда выполнится без учета созданного псевдонима.

Как удалить псевдоним команды bash?

Для удаления следует использовать следующий синтаксис:

$ unalias aliasname

например удалим созданный раннее алиас:

$ unalias c

Вам так же необходимо удалить псевдоним из ~/.bashrc файла, если хотите полностью убрать данный псевдоним.

Как создать постоянный псевдоним?

Указанный выше способ позволял создавать псевдонимы в рамках текущей сессии, для того, чтобы ваши псевдонимы команд оставались в системе на постоянной основе необходимо отредактировать ~/.bashrc файл:

$ nano ~/.bashrc

введите на новой строке в файле псевдоним в таком же формате как мы его задавали в командной строке:

alias c=clear

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

Заметка о привилегированном режиме. 

Если пользователь не root, и необходимо выполнять все перечисленные команды с помощью sudo, то добавьте в ~/.bashrc такую конструкцию:


if [ $UID -ne 0 ]; then
    alias reboot='sudo reboot'
    alias update='sudo apt-get upgrade'
fi


20 лучших примеров для псевдонимов команд в bash которые помогу вам эффективней работать с командной строкой.

#1: Управление выводом ls

## Колоризация вывода ##
alias ls='ls --color=auto'
## Вывод в формате листинга##
alias ll='ls -la'
## Показать вместо с скрытыми файлами ##
alias l.='ls -d .* --color=auto' 


#2: Управление перемещениями cd

## для тех кто забывает ставить пробел ##
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: Создание каталогов mkdir

## Создать родительские каталоги, т.е. будет создан весь путь до конечной директории ##
alias mkdir='mkdir -pv'


#5: Управление diff

иногда для работы псевдонимом необходимы дополнительные пакеты в системе, например для колоризации вывода diff предварительно установите colordiff:

alias diff='colordiff'


#6: Сделать вывод команды mount более читабельным

alias mount='mount |column -t'

#7: Команды просто сокращающие время

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

#8: Создать новый набор для команд

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

#9: Сделать vim редактором по умолчанию

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

#10: Контроль командой ping

# Останвовить программу после 5 реквестов узла #
alias ping='ping -c 5'
# Не ждать интервала в 1 секунду #
alias fastping='ping -c 100 -s.2'


#11: Показать все открытые порты:

alias ports='ss -lutn'


#12: Разбудить удаленные сервера

## измените MAC на актуальные для вас #
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'


#13: Упростить работу с iptables

##  Быстрый способ выполнить команду с использованием sudo #
alias ipt='sudo /sbin/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


#14: Добавить безопасности

# Не удалять и запрашивать при удалении более 3х файлов подряд #
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'


#15: Обновление deb системы

alias apt-get="sudo apt-get"
alias updatey="sudo apt-get --yes"

alias update='sudo apt-get update && sudo apt-get upgrade'


#16: Обновление RHEL/Fedora/CentOS

alias update='yum update'
alias updatey='yum -y update'


#17: Контроль веб серверов

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'

#18: Системный мониторинг

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'


#19: Возобновляемая загрузка

alias wget='wget -c'

#20: Запуск различный версий браузеров

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

#default ff
alias ff=ff13

#my default browser
alias browser=chrome

Комментариев нет:

Отправить комментарий