GNU/Linux >> Znalost Linux >  >> Linux

Problémy s nastavením $PATH na Bash na Ubuntu na Windows (Linuxový subsystém)

Přímá odpověď na váš problém je na konci. Myslím si však, že bude dávat větší smysl, pokud budete pokračovat ve čtení odtud.

Před pokusem o přidání do PATH ,Doporučuji nejprve otestovat program. Ve vašem případě bych to udělal takto:

wget https://releases.hashicorp.com/terraform/0.9.8/terraform_0.9.8_linux_amd64.zip
unzip terraform_0.9.8_linux_amd64.zip
./terraform

Všimněte si posledního řádku ./terraform .Zip soubor obsahuje jeden soubor, terraform , který by nyní měl být v aktuálním adresáři, takže jej mohu spustit s ./terraform .Pokud je spustitelný. Pokud spustitelný není, potvrďte to:

ls -l terraform

A v případě potřeby jej udělejte spustitelným:

chmod +x terraform

Nyní jej přidáme do PATH .Nejdříve se ale rozhodneme, kam tento spustitelný soubor umístit./usr/local/bin se zdá rozumné umístění. Přesuňme tedy terraform spustitelný do tohoto adresáře.

Obvykle /usr/local/bin je již na PATH ,takže možná nebudete muset nic měnit.Nyní můžete vyzkoušet svůj šek a je velká šance, že už funguje:

terraform -version

Pokud ne, pak /usr/local/bin není na PATH .Chcete-li jej přidat, přidejte tento řádek do ~/.profile :

export PATH=$PATH:/usr/local/bin

Dvě věci vypadaly s vaším přístupem zásadně špatně:

  1. Přidání /usr/local/terraform na PATH . To je nesmyslné, protože položky na PATH musí být adresáře a ve vašem příspěvku nic nenaznačuje, že jste vytvořili adresář na /usr/local/terraform .

    • Vy cd do /usr/local a poté unzip zip souboru Terraform. Propojený zip obsahuje jeden soubor s názvem terraform , takže /usr/local/terraform ve vašem příkladu by to měl být soubor.
    • Pokud se jedná o soubor, můžete jej nastavit jako spustitelný jako terraform přidáním přidat do PATH jeho základní adresář. Ale přidání /usr/local na PATH nebyl by to dobrý nápad. Je obvyklé vkládat binární soubory do /usr/local/bin , nikoli přímo do /usr/local
  2. Nezmínil jste se, jak jste znovu načetli ~/.profile . Po úpravě tohoto souboru se nové příkazy, které jste přidali, ve vašem aktuálním prostředí automaticky nespustí. Budou provedeny, když otevřete nový shell. Nebo můžete ručně spustit přidané příkazy v aktuálním shellu.


Linux
  1. Jak mohu definovat DIRECTORY_SEPARATOR pro platformy Windows i Linux?

  2. Připojení sdílené složky systému Windows v podsystému Windows pro Linux

  3. Kde se ve Windows 10 nachází souborový systém subsystému Linux?

  1. Rozbil jsem subsystém Windows Linux (Bash na Ubuntu na Windows 10). Pomoc s Linuxem?

  2. Nelze získat přístup k externí jednotce v systému Windows 10 Linux Subsystem bash

  3. Wget error bash Windows Subsystém pro Linux

  1. Vysvětlení subsystému Windows pro Linux, WSL a WSL2

  2. Kali na podsystému Windows pro Linux

  3. Umístění .bashrc for Bash na Ubuntu ve Windows ve Windows 10