Sök…
Introduktion
Shell alias är ett enkelt sätt att skapa nya kommandon eller att radera befintliga kommandon med din egen kod. De något överlapp med skalfunktioner , vilka är dock mer mångsidig och bör därför ofta föredragna.
Anmärkningar
Aliaset kommer endast att finnas tillgängligt i skalet där alias-kommandot utfärdades.
För att fortsätta aliaset .bashrc
lägga till det i din .bashrc
Skapa ett alias
alias word='command'
Åkallande word
kör command
. Alla argument som levereras till aliaset läggs helt enkelt till aliasmålet:
alias myAlias='some command --with --options'
myAlias foo bar baz
Skalet kommer sedan att utföra:
some command --with --options foo bar baz
Om du vill inkludera flera kommandon i samma alias kan du stränga dem tillsammans med &&
. Till exempel:
alias print_things='echo "foo" && echo "bar" && echo "baz"'
Lista alla alias
alias -p
kommer att lista alla aktuella alias.
Expandera alias
Antar att bar
är ett alias för someCommand -flag1
.
Skriv bar
på kommandoraden och tryck sedan på Ctrl + alt + e
du kommer att få someCommand -flag1
där bar
stod.
Ta bort ett alias
För att ta bort ett befintligt alias använder du:
unalias {alias_name}
Exempel:
# create an alias
$ alias now='date'
# preview the alias
$ now
Thu Jul 21 17:11:25 CEST 2016
# remove the alias
$ unalias now
# test if removed
$ now
-bash: now: command not found
Omgå ett alias
Ibland kan du kanske kringgå ett alias tillfälligt utan att inaktivera det. För att arbeta med ett konkret exempel, tänk på detta alias:
alias ls='ls --color=auto'
Och låt oss säga att du vill använda ls
kommandot utan att inaktivera aliaset. Du har flera alternativ:
- Använd
command
inbyggt:command ls
- Använd kommandans hela sökväg:
/bin/ls
- Lägg till ett
\
helst i kommandonamnet, till exempel:\ls
ellerl\s
- Citera kommandot:
"ls"
eller'ls'
BASH_ALIASES är en intern bash-assray
Aliaser benämns genvägar på kommandon, man kan definiera och använda i interaktiva bash-instanser. De hålls i en associerande grupp som heter BASH_ALIASES. För att använda denna var i ett skript måste den köras i ett interaktivt skal
#!/bin/bash -li
# note the -li above! -l makes this behave like a login shell
# -i makes it behave like an interactive shell
#
# shopt -s expand_aliases will not work in most cases
echo There are ${#BASH_ALIASES[*]} aliases defined.
for ali in "${!BASH_ALIASES[@]}"; do
printf "alias: %-10s triggers: %s\n" "$ali" "${BASH_ALIASES[$ali]}"
done