Weboldal keresés

Bash-aliasok létrehozásának és használatának különböző módjai Linuxban


Az Alias a bash-ban egyszerűen parancsnak vagy parancsikonnak nevezhető, amely egy másik parancsot/programot futtat. Az Alias nagyon hasznos, ha a parancsunk nagyon hosszú, és gyakran használt parancsokhoz. A cikk során látni fogjuk, hogy milyen erős az álnév, és hogyan lehet beállítani és használni az álnevet.

Ellenőrizze a Bash aliasokat Linuxon

Az Alias egy shell beépített parancs, amelyet a következő futtatásával erősíthet meg:

type -a alias

alias is a shell builtin

Mielőtt ugrunk és beállítunk egy aliast, látni fogjuk az érintett konfigurációs fájlokat. Az aliasfelhasználói szinten” vagy „rendszerszinten” állítható be.

Hívja elő a shelljét, és egyszerűen írja be az „alias” parancsot a meghatározott álnevek listájának megtekintéséhez.

alias

A felhasználói szintű álnevek a .bashrc vagy a .bash_aliases fájlban definiálhatók. A .bash_aliases fájl célja, hogy az összes álnevet külön fájlba csoportosítsa, ahelyett, hogy a .bashrc fájlba helyezné más paraméterekkel együtt. Kezdetben a .bash_aliases nem lesz elérhető, és létre kell hoznunk.

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

Nyissa meg a .bashrc fájlt, és nézze meg a következő részt. Ez a kódszakasz felelős annak ellenőrzéséért, hogy a .bash_aliases fájl megtalálható-e a felhasználó saját könyvtárában, és minden alkalommal betöltődik, amikor új terminálmunkamenetet kezdeményez.

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

Egyéni aliasfájlt is létrehozhat bármely könyvtárban, és megadhatja a definíciót a .bashrc vagy a .profile fájlban a betöltéshez. De ezt nem részesítem előnyben, és úgy döntök, hogy az összes aliasomat a .bash_aliases alá csoportosítom.

Felvehet álneveket a .bashrc fájl alá is. Nézze meg az alias részt a .bashrc fájl alatt, ahol néhány előre definiált álnév található.

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$//'\'')"'

Alias létrehozása Linuxban

Létrehozhat egy ideiglenes aliast, amely csak az aktuális munkamenethez kerül tárolásra, és az aktuális munkamenet végén megsemmisül, vagy egy állandó aliast, amely állandó marad.

Az álnév létrehozásának szintaxisa Linuxban.

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

Például egy valós forgatókönyvben.

alias Hello="echo welcome to Tecmint"

Nyissa meg a terminált, és hozzon létre bármilyen kívánt alias parancsot. Ha egy másik munkamenetet nyit, akkor az újonnan létrehozott álnév nem lesz elérhető.

alias Hello"echo welcome to Tecmint"
alias
Hello

Az alias állandóvá tételéhez adja hozzá a .bash_aliases fájlhoz. Használhatja kedvenc szövegszerkesztőjét, vagy használja a cat parancsot vagy az echo parancsot álnév hozzáadásához.

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

Újra kell töltenie a .bash_aliases fájlt, hogy a változtatások érvénybe lépjenek az aktuális munkamenetben.

source ~/.bash_aliases

Ha most futtatom az “nf” parancsot, amely a „neofetch” álneve, elindítja a neofetch programot.

nf

Az alias hasznos lehet, ha felül szeretné bírálni bármely parancs alapértelmezett viselkedését. A demonstrációhoz egy uptime parancsot veszek, amely megjeleníti a rendszer üzemidejét, a bejelentkezett felhasználók számát és a rendszer terhelési átlagát. Most létrehozok egy álnevet, amely felülírja az uptime parancs viselkedését.

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

Ebből a példából megállapíthatja, hogy a bash álnevek elsőbbsége a tényleges parancs ellenőrzése és meghívása előtt áll fenn.

cat ~/.bash_aliases
source ~/.bash_aliases
uptime

Alias eltávolítása Linuxban

Most távolítsa el az uptime bejegyzést a .bash_aliases fájlból, és töltse be újra a .bash_aliases fájlt, amely továbbra is kinyomtatja az üzemidőt alias definícióval. Ennek az az oka, hogy az alias definíció betöltődik az aktuális shell-munkamenetbe, és vagy új munkamenetet kell indítanunk, vagy törölnünk kell az alias definíciót az unalias parancs futtatásával, ahogy az a kép alatt.

unalias uptime

Rendszerszintű álnevek hozzáadása

Eddig a pontig láttuk, hogyan állíthatunk be egy aliast felhasználói szinten. Az álnév globális beállításához módosíthatja az „/etc/bash.bashrc ” fájlt, és hozzáadhat álneveket, amelyek globálisan érvényesek. A bash.bashrc fájl módosításához magasabb szintű jogosultságokkal kell rendelkeznie.

Alternatív megoldásként hozzon létre egy szkriptet az „/etc/profile.d/” alatt. Amikor bejelentkezik egy shellbe, az „/etc/profile” minden szkriptet lefuttat a profile.d alatt, mielőtt ténylegesen futtatná a ~/.profile fájlt. Ez a módszer csökkenti az /etc/profile vagy az /etc/bash.bashrc fájl összezavarásának kockázatát.

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

Az alábbiakban látható az /etc/profile fájlból lefoglalt kód, amely gondoskodik az /etc/profiles.d/ alá helyezett szkriptek futtatásáról. Megkeresi a .sh kiterjesztésű fájlokat, és futtatja a forrás parancsot.

tail /etc/profile

Ennyit ehhez a cikkhez. Láttuk, mi az alias, az aliashoz kapcsolódó konfigurációs fájlok, valamint az alias helyi és globális beállításának különböző módjai.