it-swarm.dev

Jak vytvořit trvalý „alias“?

Pokud například vytvoříte alias:

alias cls="clear"

Existuje, dokud nezabijete terminálovou relaci. Při spuštění nového terminálového okna alias již neexistuje. Jak vytvořit „permanentní“ alias, který existuje v každé relaci terminálu?

196
Zango

Tyto aliasy můžete vložit do ~/.bash_aliases soubor.

Tento soubor je načten pomocí ~/.bashrc. Na Ubuntu 10.04 musí být následující řádky, aby bylo možné používat ~/.bash_aliases. Na Ubuntu 11.04 a novějších je již povoleno:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Příkaz s aliasy bude k dispozici na jakémkoli novém terminálu. Chcete-li mít příkaz s aliasem na jakémkoli existujícím terminálu, musíte zdroj ~/.bashrc z tohoto terminálu jako,

source ~/.bashrc
216
PHP Guru

Přidejte svůj řádek do ~/.bashrc nebo do ~/.profile/~/.bash_profile pro vzdálené přihlášení.

Pokud chcete, aby byl příkaz spuštěn pro všechny uživatele, vložte jej do /etc/bash.bashrc.

pravit: V nejnovějších verzích Ubuntu ~/.bashrc automaticky zdroje ~/.bash_aliases, takže do tohoto souboru je nejlepší vložit trvalé aliasy.

38
txwikinger

Funkci níže můžete přidat do souboru .bashrc.

function permalias () 
{ 
  alias "$*";
  echo alias "$*" >> ~/.bash_aliases
}

Poté otevřete nový terminál nebo spusťte source ~/.bashrc ve vašem aktuálním terminálu. Nyní můžete vytvořit trvalé aliasy pomocí příkazu permalias, například permalias cls=clear.

19
Tolli

Držte tento příkaz v posledním řádku vašeho ~/.bash_profile

4
popey

Viz http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html pro rozdíl mezi ~/.bash_profile a ~/.bashrc

~/.bashrc se spustí při každém otevření nového terminálu, zatímco ~/.bash_profile není. ~/.bashrc obsahuje následující položky, které zahrnují ~/.bash_aliases soubor. To by bylo nejvhodnější místo pro přidání vašeho aliasu.

# 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
4
Mat