在Windows上的Ubuntu上的Bash上设置$ PATH的问题(Linux子系统)

我正在使用“Windows上的Ubuntu上的Bash”(Linux子系统)并希望将Terraform添加到我的$ PATH中。由于Terraform无法通过安装apt-get的,我做了以下步骤:

  1. 导航到该目录,在这里我想安装Terraform:

    CD的/ usr /本地

  2. 在上面的路径,我用的wget下载Terraform:

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

  3. Terraform成功解压缩!当我打开VIM文件它是所有好:

    解压terraform_0.9.8_linux_amd64.zip

  4. 我再输入这个命令来检查,看看是否Terraform二是通过命令行访问:

    terraform -version

但是被返回以下消息:

terraform: command not found 

这告诉我需要将Terraform下载的位置添加到我的$ PATH中。

  • 已经被记录在作为根用户( “须藤ス”)我输入以下命令访问 “的.profile”:
  • VIM〜/简介

    以下是已经在该文件中,这是我离开不变:

    # ~/.profile: executed by Bourne-compatible login shells. 

    if [ "$BASH" ]; then

    if [ -f ~/.bashrc ]; then

    . ~/.bashrc

    fi

    fi

    mesg n

    正下方,这样的文字,我添加以下,并成功拯救文件使用:wq!:

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

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

    6. 我然后再输入以下命令来检查,看看是否在检测

    terraform

    terraform -version

    还是一样的 “terraform:命令未找到”消息被返回。我甚至尝试关闭并启动一个新的命令行会话,甚至重新启动我的电脑。仍然没有变化。

    任何人有任何想法如何解决这个问题?再次请注意,我正在使用“Windows上的Ubuntu上的Bash”(Linux子系统)。任何输入将不胜感激!

    回答:

    您的问题的直接答案是在最后。 但是我认为如果你继续阅读,这会更有意义。

    在尝试添加到PATH, 之前,我建议先测试一个程序。 在你的情况,我会做这样的:

    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

    通知的最后一行./terraform。 zip文件包含一个文件,terraform, ,现在应该在当前目录中, ,所以我可以用./terraform运行它。 如果它是可执行的。 如果不是可执行文件,然后确认:

    ls -l terraform 

    ,并使其可执行如果需要的话:

    chmod +x terraform 

    现在,让我们将它添加到PATH。 但首先,我们决定在哪里放置这个可执行文件。 /usr/local/bin似乎是一个合理的位置。 那么让我们将terraform可执行文件移动到该目录中。

    通常/usr/local/bin已在PATH, 所以你可能不需要改变任何东西。 现在你可以试试你的支票,这里面的它已经工作的一个很好的机会:

    terraform -version 

    如果没有,那么/usr/local/bin不上PATH。 要添加它,在~/.profile加入这一行:

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


    两个事情看起来根本不对您的方法:

    1. 添加/usr/local/terraformPATH。这很腥,因为PATH上的条目必须是目录,并且在你的文章中没有任何内容表示你创建了一个目录/usr/local/terraform

      • cd/usr/local,然后unzip terraform的zip文件。链接的zip包含一个名为terraform的文件,因此您示例中的/usr/local/terraform应该是一个文件。
      • 如果它是一个文件,那么你可以通过添加到PATH的基本目录来使其可执行为terraform。但将/usr/local添加到PATH不是一个好主意。这是传统的把二进制文件为/usr/local/bin,而不是直接进入/usr/local
    2. 你没有提到如何重新加载~/.profile。编辑此文件后,您添加的新命令不会在当前shell中自动执行。当你打开一个新的shell时它们会被执行。或者你可以在当前shell中手动执行添加的命令。

    以上是 在Windows上的Ubuntu上的Bash上设置$ PATH的问题(Linux子系统) 的全部内容, 来源链接: utcz.com/qa/259485.html

    回到顶部