Před pár dny jsme diskutovali o tom, jak přepínat mezi více verzemi PHP . V této metodě jsme použili 'alternativy aktualizace' příkaz pro přechod z jedné verze PHP na druhou. To znamená, že příkazy update-alternatives vám pomohou nastavit, kterou systémovou verzi PHP chcete standardně používat. Laicky řečeno, můžete změnit verzi příkazového systému v celém systému pomocí příkazu 'update-alternatives'. Co když chcete dynamicky měnit verze příkazů v závislosti na adresáři, ve kterém se nacházíte? Zde je 'alt' utilita přichází na pomoc. Alt je nástroj příkazového řádku, který vám pomáhá přepínat mezi různými verzemi příkazů v systémech podobných Unixu. Je to jednoduchý, bezplatný, open source nástroj napsaný v Rust programovací jazyk.
Instalace
Instalace alt utility je triviální.
Chcete-li nainstalovat alt na váš počítač se systémem Linux, stačí spustit následující příkaz:
$ curl -sL https://github.com/dotboris/alt/raw/master/install.sh | bash -s
Dále přidejte adresář shims do své proměnné prostředí PATH v závislosti na SHELL, který používáte.
Pro BASH :
$ echo 'export PATH="$HOME/.local/alt/shims:$PATH"' >> ~/.bashrc $ source ~/.bashrc
Pro ZSH :
$ echo 'export PATH="$HOME/.local/alt/shims:$PATH"' >> ~/.zshrc $ source ~/.zshrc
Pro RYBY :
$ echo 'set -x PATH "$HOME/.local/alt/shims" $PATH' >> ~/.config/fish/config.fish
Alt je nainstalován!
Přepínání mezi různými verzemi příkazů pomocí nástroje Alt v Linuxu
Jak jsem již zmínil, alt pracuje s aktuálním adresářem. To znamená, že když přecházíte z jedné verze na druhou, děláte to pouze pro aktuální pracovní adresář, nikoli pro celý systém.
Podívejme se na příklad. Nainstaloval jsem do svého systému Ubuntu dvě verze PHP, PHP 5.6 a PHP 7.2, a mám nějaké aplikace PHP v adresáři s názvem 'myproject' .
Nejprve se podívejme na globálně nainstalovanou verzi PHP pomocí příkazu:
$ php -v
Ukázkový výstup:
Jak vidíte na výše uvedeném snímku obrazovky, moje výchozí verze pro celý systém je PHP7.2.
Dále se dostanu do adresáře "myproject", kde mám uloženy své PHP aplikace.
$ cd myproject
Prohledejte dostupné verze PHP pomocí následujícího příkazu:
$ alt scan php
Ukázkový výstup:
Jak můžete vidět, mám dvě verze PHP, PHP5.6 a PHP7.2. Nyní stiskněte
Poté spusťte následující příkaz a vyberte verzi PHP, kterou chcete použít v adresáři 'myproject':
$ alt use php
Budu používat verzi PHP5.6, tak jsem ji vybral (pro výběr použijte klávesy se šipkami) a zmáčkl klávesu ENTER.
Přepínání mezi různými verzemi příkazů v Linuxu
Nyní můžete používat php 5.6 (/usr/bin/php5.6) v adresáři /home/sk/myproject.
Pojďme zkontrolovat, zda je PHP5.6 nastaveno jako výchozí v adresáři myproject:
$ php -v
Ukázkový výstup:
Zůstane jako verze 5.6, dokud nezměníte na jinou verzi. Mám to? Dobře!
Upozorňujeme, že verzi php5.6 používáme pouze v tomto adresáři. Na systémové úrovni je PHP7.2 stále výchozí verzí. Podívejte se na následující obrázek.
Jak můžete vidět na výše uvedeném snímku obrazovky, mám dvě různé verze PHP. V adresáři 'myproject' mám PHP5.6 a mimo myproject je verze PHP 7.2.
Podobně můžete v každém adresáři nastavit libovolnou verzi dle vašeho výběru. Pro účely demonstrace jsem použil PHP. Můžete však použít jakýkoli software podle svého výběru, například NodeJS.
Zde je ukázkové video pro NodeJS.
Nástroj alt může být užitečný, když chcete své aplikace otestovat pod různými verzemi aplikací.