Když jsem si hrál s Terminálem, všiml jsem si, že existuje mnoho způsobů, jak vytvořit trvalé aliasy.
Jsem v Linuxu nováček a podle toho, co vím, dělám:
sudo ln -s /path/to/executable /usr/local/bin/desired_alias
- přidání
desired_alias = '/path/to/executable'
na~/.bashrc
-
odkomentování těchto řádků v
~/.bashrc
:if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
a zadáním
desired_alias = '/path/to/executable'
do~/.bash_aliases
všechny mají stejný účinek.
Jaký je rozdíl mezi první a druhou metodou?
Přijatá odpověď:
První metodou nevytváříte alias, ale symbolický odkaz. Symbolické odkazy jsou zkratkou pro symbolické odkazy:
Symbolické odkazy jsou soubory, které fungují jako
ukazatele na jiné soubory. […] Symbolický odkaz
je speciální typ souboru
, jehož obsahem je řetězec, který
je cesta k jinému souboru, souboru
, na který odkaz odkazuje. Jinými
slovy, symbolický odkaz je ukazatel na
jiné jméno, nikoli na podkladový
objekt.
Přečtěte si více o symbolických odkazech zde a zde.
Pouze pomocí druhé metody ve skutečnosti vytváříte alias.
Aliasy umožňují
nahradit slovo řetězcem, když je použit
jako první slovo jednoduchého příkazu.
Shell udržuje seznam aliasů
, které lze nastavit a zrušte nastavení pomocí
vestavěných příkazů alias a unalias
(viz PŘÍKAZY SHELL BUILTIN níže).
První slovo každého jednoduchého
příkazu, pokud není v uvozovkách, je zaškrtnuto na
podívejte se, zda má alias. Pokud ano, bude toto
slovo nahrazeno textem aliasu
.
Alias můžete definovat kdekoli, kde můžete zadat příkaz a mít shell (bash v tomto případě) jej interpretujte, ale aby byl alias dostupný v jiných shellech, musí být definován v souboru, který je interpretován shellem při spuštění (spuštění prostředí, nikoli spuštění počítače).
Pro bash jsou to /etc/bash.bashrc
(v celém systému) a ~/.bashrc
. Tyto soubory jsou interpretovány, když se shell spustí v interaktivním režimu (jako když používáte Terminal
). Nebudu se zmiňovat o souborech profilu, protože slouží jinému účelu.
Takže chcete přidat své aliasy do ~/.bashrc
aby byly dostupné v každém interaktivním prostředí.
.bash_aliases
metoda dosahuje přesně totéž jako vložení aliasů do ~/.bashrc
ale má tu výhodu, že je snáze analyzovat a manipulovat programy.
. ~/.bash_aliases
znamená zdroj (načíst) _~/.bash_aliases_
v kontextu aktuálně spuštěného shellu.