加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

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

发布时间:2020-12-14 01:57:42 所属栏目:Windows 来源:网络整理
导读:我正在使用“ Windows上的Bash on Ubuntu”( Linux子系统),并希望将Terraform添加到我的$PATH中.由于无法通过apt-get安装Terraform,我执行了以下步骤: 导航到此目录,我想在其中安装Terraform: cd /usr/local 在上面的路径中,我使用wget下载Terraform: wge
我正在使用“ Windows上的Bash on Ubuntu”( Linux子系统),并希望将Terraform添加到我的$PATH中.由于无法通过apt-get安装Terraform,我执行了以下步骤:

>导航到此目录,我想在其中安装Terraform:

cd /usr/local
>在上面的路径中,我使用wget下载Terraform:

wget的
https://releases.hashicorp.com/terraform/0.9.8/terraform_0.9.8_linux_amd64.zip
> Terraform成功解压缩!当我在VIM中打开文件时,一切都很好:

解压缩terraform_0.9.8_linux_amd64.zip
>然后输入此命令以检查是否可以从命令行访问Terraform二进制文件:

terraform -version

但是会返回以下消息:

terraform: command not found

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

>已经以root用户身份登录(“sudo su”)我输入以下命令来访问“.profile”:

vim~ / .profile

以下内容已在此文件中,我保持不变:

# ~/.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:command not found”消息.我甚至尝试关闭并启动新的命令行会话,甚至重新启动计算机.仍然没有变化.

任何人有任何想法如何解决这个问题?再次注意,我正在使用“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

你的方法看起来两件事情根本不对:

>将/usr/local/terraform添加到PATH.这很可疑,因为PATH上的条目必须是目录,并且在您的帖子中没有任何内容表示您在/usr/local/terraform中创建了一个目录.

>你进入/usr/local,然后解压缩terraform的zip文件.链接的zip包含一个名为terraform的文件,因此示例中的/usr/local/terraform应该是一个文件.
>如果它是一个文件,那么你可以通过添加到PATH的基本目录来使其可执行为terraform.但是将/usr/local添加到PATH并不是一个好主意.将二进制文件放入/usr/local/bin是常规的,而不是直接放入/usr/local

>你没有提到你是如何重新加载?/ .profile的.编辑此文件后,您添加的新命令不会在当前shell中自动执行.当您打开一个新shell时,它们将被执行.或者您可以在当前shell中手动执行添加的命令.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读