Zoeken…


Invoering

Shell-aliassen zijn een eenvoudige manier om nieuwe opdrachten te maken of bestaande opdrachten met eigen code te verpakken. Ze overlappen enigszins met shell- functies , die echter veelzijdiger zijn en daarom vaak de voorkeur verdienen.

Opmerkingen

De alias is alleen beschikbaar in de shell waarin de alias-opdracht is uitgegeven.

Overweeg om het alias aan te houden om het in uw .bashrc

Maak een alias

alias word='command'

Het aanroepende word zal command . Alle argumenten die aan de alias worden gegeven, worden eenvoudig toegevoegd aan het doel van de alias:

alias myAlias='some command --with --options'
myAlias foo bar baz

De shell zal dan uitvoeren:

some command --with --options foo bar baz

Als u meerdere opdrachten in dezelfde alias wilt opnemen, kunt u ze samen met && combineren. Bijvoorbeeld:

alias print_things='echo "foo" && echo "bar" && echo "baz"'

Lijst met alle aliassen

alias -p

geeft alle huidige aliassen weer.

Alias uitvouwen

Ervan uitgaande dat die bar een alias is voor someCommand -flag1 .

Typ bar op de opdrachtregel en druk vervolgens op Ctrl + alt + e

je krijgt someCommand -flag1 waar de bar stond.

Verwijder een alias

Gebruik om een bestaande alias te verwijderen:

unalias {alias_name}

Voorbeeld:

# 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

Een alias omzeilen

Soms wilt u een alias tijdelijk omzeilen zonder het uit te schakelen. Overweeg deze alias om met een concreet voorbeeld te werken:

alias ls='ls --color=auto'

En laten we zeggen dat u de opdracht ls gebruiken zonder de alias uit te schakelen. U hebt verschillende opties:

  • Gebruik de command ingebouwde: command ls
  • Gebruik het volledige pad van de opdracht: /bin/ls
  • Voeg overal in de opdrachtnaam een \ , bijvoorbeeld: \ls of l\s
  • Citeer het commando: "ls" of 'ls'

De BASH_ALIASES is een interne bash assoc-array

Aliassen worden snelkoppelingen naar opdrachten genoemd, die u kunt definiëren en gebruiken in interactieve bash-instanties. Ze worden gehouden in een associatieve array met de naam BASH_ALIASES. Als u deze var in een script wilt gebruiken, moet deze binnen een interactieve shell worden uitgevoerd

#!/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


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow