finder du ofte, at du skriver en lang kommando på kommandolinjen eller søger i bash-historikken efter en tidligere skrevet kommando? Hvis dit svar på et af disse spørgsmål er ja, så vil du finde bash aliaser handy. Bash aliaser giver dig mulighed for at indstille en mindeværdig genvejskommando til en længere kommando.Bash-aliaser er i det væsentlige genveje, der kan spare dig for at skulle huske lange kommandoer og fjerne en masse indtastning, når du arbejder på kommandolinjen., For eksempel kan du indstille aliaset tgz
til at være en genvej til kommandoen tar -xvfz
.
Denne artikel forklarer, hvordan du opretter bash-aliaser, så du kan være mere produktiv på kommandolinjen.
oprettelse af Bash-aliaser #
oprettelse af aliaser i bash er meget ligetil. Syntaksen er som følger:
alias alias_name="command_to_run"
Et alias erklæring, der starter med alias
søgeord efterfulgt af alias navn, et lighedstegn og den kommando, du vil køre, når du skriver alias., Kommandoen skal være lukket i anførselstegn og uden afstand omkring lighedstegnet. Hvert alias skal erklæres på en ny linje.
ls
kommandoen er sandsynligvis en af de mest anvendte kommandoer på Linu. – kommandolinjen. Jeg bruger normalt denne kommando med -la
skift til at liste alle filer og mapper, inklusive de skjulte i langlisteformat.
lad os oprette et simpelt bash-alias med navnet ll
, som vil være en genvej til kommandoen ls -la
., At gøre så skriv åbne en terminal vindue og skriv:
alias ll="ls -la"
Nu, hvis du skriver ll
i din terminal, vil du få det samme output som du ville ved at skrive ls -la
.
ll
alias vil kun være tilgængeligt i den aktuelle shell-session. Hvis du afslutter sessionen eller åbner en ny session fra en anden terminal, er aliaset ikke tilgængeligt.
for at gøre aliaset vedvarende skal du erklære det i ~/.bash_profile
eller ~/.bashrc
filen.,
Åbn filen i din teksteditor:
nano ~/.bashrc
og tilføj dine aliaser:
# Aliases# alias alias_name="command_to_run"# Long format listalias ll="ls -la"# Print my public IPalias myip='curl ipinfo.io/ip'
aliaserne skal navngives på en måde, der er let at huske. Det anbefales også at tilføje en kommentar til fremtidig reference.
Når du er færdig, skal du gemme og lukke filen. Gør aliaserne tilgængelige i din aktuelle session ved at skrive:
source ~/.bashrc
som du kan se, er det hurtigt og meget nemt at oprette enkle bash-aliaser.,
.bashrc
mere modulært, kan du gemme dine aliaser i en separat fil. Nogle distributioner som Ubuntu og Debian inkluderer en .bash_aliases
fil, som er hentet fra~/.bashrc
.oprettelse af Bash-aliaser med argumenter (Bash-funktioner) #
Nogle gange skal du muligvis oprette et alias, der accepterer en eller flere argumenter. Det er her bash-funktioner kommer godt med.
syntaksen til oprettelse af en bash-funktion er meget let., De kan angives i to forskellige formater:
function_name () { }
eller
function function_name { }
for At passere et vilkårligt antal argumenter til bash funktion blot lægge dem til rette efter funktionens navn, adskilt af et mellemrum. De overførte parametre er $1
$2
$3
osv., svarende til placeringen af parameteren efter funktionens navn. Variablen$0
er reserveret til funktionsnavnet.,
lad os oprette en simpel bash-funktion, der opretter en mappe og derefter navigere ind i den:
mkcd (){ mkdir -p -- "$1" && cd -P -- "$1"}
Samme som med et alias, tilføjer de funktioner til din ~/.bashrc
fil og kør source ~/.bash_profile
for at genindlæse filen.,
Nu, i stedet for at bruge mkdir
for at oprette en ny mappe, og derefter cd
for at flytte ind i denne mappe , kan du blot skrive:
mkcd new_directory
Hvis du spekulerer på, hvad er --
og &&
her er en kort forklaring.
--
– sørger for, at du ikke ved et uheld sender et ekstra argument til kommandoen., Forsøger at oprette en mappe, der starter med-
(dash) uden at bruge--
katalognavnet fortolkes som et kommandoargument.-
&&
– sikrer, at den anden kommando kun kører, hvis den første kommando er vellykket.
konklusion #
nu skal du have en god forståelse af, hvordan du opretter bash-aliaser og funktioner, der vil gøre dit liv på kommandolinjen lettere og mere produktivt.
Skriv et svar