Dažādi veidi, kā izveidot un izmantot Bash aizstājvārdus Linux


Pseidonīmi bash var saukt vienkārši par komandu vai saīsni, kas palaidīs citu komandu/programmu. Alias ir ļoti noderīgs, ja mūsu komanda ir ļoti gara un bieži lietotām komandām. Šī raksta gaitā mēs redzēsim, cik spēcīgs ir aizstājvārds un dažādi veidi, kā izveidot un aizstāt aizstājvārdu.

Pārbaudiet Bash aizstājvārdus Linux

Alias ir iebūvēta čaulas komanda, un to varat apstiprināt, palaižot:

$ type -a alias

alias is a shell builtin

Pirms lēciena un aizstājvārda iestatīšanas mēs redzēsim iesaistītos konfigurācijas failus. Pseidonīmu var iestatīt vai nu “lietotāja līmenī”, vai “sistēmas līmenī”.

Izsauciet čaulu un vienkārši ierakstiet “alias”, lai redzētu definēto aizstājvārdu sarakstu.

$ alias

Lietotāja līmeņa aizstājvārdus var definēt vai nu failā .bashrc, vai failā .bash_aliases. .Bash_aliases faila mērķis ir grupēt visus aizstājvārdus atsevišķā failā, nevis ievietot tos .bashrc failā kopā ar citiem parametriem. Sākotnēji .bash_aliases nebūs pieejami, un mums tas ir jāizveido.

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

Atveriet .bashrc failu un pievērsiet uzmanību šai sadaļai. Šī koda sadaļa ir atbildīga par to, lai pārbaudītu, vai lietotāja mājas direktorijā ir fails .bash_aliases, un ielādējiet to ikreiz, kad sākat jaunu termināla 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

Varat arī izveidot pielāgotu aizstājvārda failu jebkurā direktorijā un pievienot definīciju vai nu .bashrc vai .profile, lai to ielādētu. Bet es tam nedosšu priekšroku, un es izvēlos palikt pie visu savu aizstājvārdu grupēšanas zem .bash_aliases.

Alias var pievienot arī zem faila .bashrc. Meklējiet aizstājvārdu sadaļu zem faila .bashrc, kur tam ir daži iepriekš definēti aizstājvārdi.

# 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 izveidošana Linux

Varat izveidot pagaidu aizstājvārdu, kas tiks saglabāts tikai jūsu pašreizējai sesijai un tiks iznīcināts, tiklīdz jūsu pašreizējā sesija būs pabeigta, vai arī pastāvīgu aizstājvārdu, kas būs pastāvīgs.

Sintakse aizstājvārda izveidošanai Linux.

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

Piemēram, reālā scenārijā.

$ alias Hello="echo welcome to Tecmint"

Atveriet termināli un izveidojiet vēlamo aizstājvārda komandu. Ja atverat citu sesiju, jaunizveidotais aizstājvārds nebūs pieejams.

$ alias Hello"echo welcome to Tecmint"
$ alias
$ Hello

Lai aizstājvārds būtu noturīgs, pievienojiet to failam .bash_aliases. Lai pievienotu aizstājvārdu, varat izmantot iecienīto teksta redaktoru vai komandu echo.

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

Lai izmaiņas būtu spēkā pašreizējā sesijā, jums ir jāpārlādē .bash_aliases fails.

$ source ~/.bash_aliases

Tagad, ja es palaidu “nf”, kas ir “neofetch” aizstājvārds, tas aktivizēs neofetch programmu.

$ nf

Alias var būt noderīgs, ja vēlaties ignorēt jebkuras komandas noklusējuma darbību. Demonstrācijai es ņemšu uptime komandu, kas parādīs sistēmas darbības laiku, pieteicies lietotāju skaitu un vidējo sistēmas slodzi. Tagad es izveidošu aizstājvārdu, kas ignorēs uptime komandas uzvedību.

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

Izmantojot šo piemēru, jūs varat secināt, ka prioritāte ietilpst bas aizstājvārdos pirms faktiskās komandas pārbaudīšanas un izsaukšanas.

$ cat ~/.bash_aliases
$ source ~/.bash_aliases
$ uptime

Aizstājvārda noņemšana operētājsistēmā Linux

Tagad noņemiet uptime ierakstu no faila .bash_aliases un atkārtoti ielādējiet failu .bash_aliases, kas joprojām izdrukās uptime ar aizstājvārda definīciju. Tas ir tāpēc, ka aizstājvārda definīcija tiek ielādēta pašreizējā čaulas sesijā, un mums ir vai nu jāsāk jauna sesija, vai arī jāatspējo aizstājvārda definīcija, palaižot komandu unalias, kā parādīts zemāk esošajā attēlā.

$ unalias uptime

Sistēmas mēroga aizstājvārdu pievienošana

Līdz šim esam redzējuši, kā lietotāja līmenī iestatīt aizstājvārdu. Lai globāli iestatītu aizstājvārdu, varat modificēt failu “/etc/bash.bashrc” un pievienot aizstājvārdus, kas būs efektīvi visā pasaulē. Lai modificētu failu bash.bashrc, jums jābūt paaugstinātai privilēģijai.

Varat arī izveidot skriptu sadaļā “/etc/profile.d/”. Kad piesakāties čaulā, “/ etc/profile” palaidīs jebkuru skriptu zem profila.d, pirms faktiski palaidīsit ~/.profile. Šī metode samazinās/etc/profile vai /etc/bash.bashrc faila sajaukšanas risku.

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

Zemāk ir kods, kas sagrābts no/etc/profile, kas rūpējas par visu skriptu palaišanu, kurus mēs ievietojam zem /etc/profiles.d/. Tas pievērsīs uzmanību visiem failiem ar paplašinājumu .sh un palaidīs avota komandu.

$ tail /etc/profile

Tas ir šis raksts. Mēs esam redzējuši, kas ir aizstājvārds, ar aizstājvārdu saistītie konfigurācijas faili un dažādi veidi, kā aizstājvārdu iestatīt lokāli un globāli.