Različiti načini za stvaranje i korištenje Bash aliasa u Linuxu


Alias u bashu se može jednostavno nazvati naredbom ili prečacem koji će pokrenuti drugu naredbu/program. Alias je od velike pomoći kada je naša naredba jako duga i za često korištene naredbe. Tijekom ovog članka vidjet ćemo koliko je pseudonim moćan i različite načine postavljanja pseudonima i njegove upotrebe.

Provjerite Bash pseudonime u Linuxu

Alias je naredba ugrađena u ljusku i možete je potvrditi pokretanjem:

type -a alias

alias is a shell builtin

Prije skakanja i postavljanja aliasa vidjet ćemo uključene konfiguracijske datoteke. Alias se može postaviti na “razini korisnika” ili “razini sustava”.

Pozovite svoju ljusku i jednostavno upišite “alias” da vidite popis definiranih aliasa.

alias

Aliasi na korisničkoj razini mogu se definirati u datoteci .bashrc ili .bash_aliases. Datoteka .bash_aliases grupira sve vaše aliase u zasebnu datoteku umjesto da ih stavlja u datoteku .bashrc zajedno s drugim parametrima. U početku .bash_aliases neće biti dostupan i moramo ga izraditi.

ls -la ~ | grep -i .bash_aliases       # Check if file is available
touch ~/.bash_aliases                  # Create empty alias file

Otvorite datoteku .bashrc i potražite sljedeći odjeljak. Ovaj odjeljak koda odgovoran je za provjeru je li datoteka .bash_aliases prisutna u početnom direktoriju korisnika i učitava je kad god pokrenete novu terminalsku sesiju.

Alias definitions.
You may want to put all your additions into a separate file like
~/.bash_aliases, instead of adding them here directly.
See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Također možete stvoriti prilagođenu datoteku aliasa u bilo kojem direktoriju i dodati definiciju u .bashrc ili .profile da biste je učitali. Ali ovo mi se ne sviđa i odlučio sam se držati grupiranja svih svojih aliasa pod .bash_aliases.

Također možete dodati pseudonime ispod .bashrc datoteke. Obratite pažnju na odjeljak alias u datoteci .bashrc gdje dolazi s nekim unaprijed definiranim aliasima.

enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'

some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

Add an "alert" alias for long running commands.  Use like so:
  sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

Stvaranje aliasa u Linuxu

Možete stvoriti privremeni pseudonim koji će biti pohranjen samo za vašu trenutnu sesiju i bit će uništen kada vaša trenutna sesija završi ili trajni alias koji će biti postojan.

Sintaksa za stvaranje pseudonima u Linuxu.

alias <name-of-the-command>="command to run"

Na primjer, u stvarnom scenariju.

alias Hello="echo welcome to Tecmint"

Otvorite terminal i stvorite bilo koju naredbu alias koju želite. Ako otvorite drugu sesiju, tada novostvoreni alias neće biti dostupan.

alias Hello"echo welcome to Tecmint"
alias
Hello

Da bi pseudonim postao postojan, dodajte ga u datoteku .bash_aliases. Možete upotrijebiti svoj omiljeni uređivač teksta ili upotrijebiti naredbu cat ili echo za dodavanje pseudonima.

echo alias nf="neofetch" >> ~/.bash_aliases
cat >> ~/.bash_aliases
cat ~/.bash_aliases

Morate ponovno učitati datoteku .bash_aliases kako bi promjene bile učinkovite u trenutnoj sesiji.

source ~/.bash_aliases

Sada ako pokrenem “nf” što je pseudonim za “neofetch” to će pokrenuti program neofetch.

nf

Alias može dobro doći ako želite nadjačati zadano ponašanje bilo koje naredbe. Za demonstraciju, uzet ću naredbu uptime, koja će prikazati vrijeme rada sustava, broj prijavljenih korisnika i prosječno opterećenje sustava. Sada ću stvoriti alias koji će nadjačati ponašanje naredbe za vrijeme rada.

uptime
cat >> ~/.bash_aliases alias uptime="echo 'I am running uptime command now'"
source ~/.bash_aliases
uptime

Iz ovog primjera možete zaključiti da prednost imaju bash aliasi prije provjere i pozivanja stvarne naredbe.

cat ~/.bash_aliases
source ~/.bash_aliases
uptime

Uklanjanje aliasa u Linuxu

Sada uklonite unos uptime iz datoteke .bash_aliases i ponovno učitajte datoteku .bash_aliases koja će i dalje ispisivati uptime s definicijom pseudonima. To je zato što se definicija aliasa učitava u trenutnu sesiju ljuske i moramo započeti novu sesiju ili poništiti definiciju aliasa pokretanjem naredbe unalias kao što je prikazano u ispod slike.

unalias uptime

Dodavanje aliasa na razini cijelog sustava

Do ove točke vidjeli smo kako postaviti alias na razini korisnika. Kako biste globalno postavili alias, možete modificirati datoteku “/etc/bash.bashrc ” i dodati aliase koji će biti učinkoviti globalno. Morate imati povišenu privilegiju za izmjenu datoteke bash.bashrc.

Alternativno, izradite skriptu pod “/etc/profile.d/ ”. Kada se prijavite u ljusku “/etc/profile ” pokrenut će bilo koju skriptu pod profile.d prije stvarnog pokretanja ~/.profile. Ova metoda će smanjiti rizik od zabrljanja datoteke /etc/profile ili /etc/bash.bashrc.

sudo cat >> /etc/profile.d/alias.sh
alias ls=”ls -ltra”

Ispod je kod preuzet iz /etc/profile koji se brine za pokretanje svih skripti koje stavljamo pod /etc/profiles.d/. Potražit će sve datoteke s ekstenzijom .sh i pokrenuti izvornu naredbu.

tail /etc/profile

To je to za ovaj članak. Vidjeli smo što je alias, konfiguracijske datoteke uključene u alias i različite načine za postavljanje aliasa lokalno i globalno.