use*_*134 7 linux bash ubuntu terraform windows-subsystem-for-linux
我正在使用"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
Run Code Online (Sandbox Code Playgroud)
这告诉我Terraform下载的位置需要添加到我的$ PATH中.
vim~/.profile
以下内容已在此文件中,我保持不变:
# ~/.profile: executed by Bourne-compatible login shells.
if [ "$BASH" ]; then
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi
mesg n
Run Code Online (Sandbox Code Playgroud)
紧接在这个文本下面,我添加以下内容,并使用:wq成功保存文件!:
export PATH=/usr/local/bin:$PATH
export PATH=$PATH:/usr/local/terraform
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
注意最后一行./terraform.zip文件包含一个文件,terraform现在应该在当前目录中,因此我可以使用它来运行它./terraform.如果它是可执行的.如果它不可执行,请确认:
ls -l terraform
Run Code Online (Sandbox Code Playgroud)
并在需要时使其可执行:
chmod +x terraform
Run Code Online (Sandbox Code Playgroud)
现在让我们添加它PATH.但首先,让我们决定将此可执行文件放在何处.
/usr/local/bin似乎是一个合理的位置 所以让我们将terraform可执行文件移动到该目录中.
通常/usr/local/bin已经开启PATH,因此您可能不需要更改任何内容.现在你可以试试你的支票了,它很有可能已经有效:
terraform -version
Run Code Online (Sandbox Code Playgroud)
如果没有,那就/usr/local/bin不在了PATH.要添加它,请在以下位置添加以下内容~/.profile:
export PATH=$PATH:/usr/local/bin
Run Code Online (Sandbox Code Playgroud)
你的方法看起来两件事情根本不对:
添加/usr/local/terraform到PATH.这很可疑,因为条目PATH必须是目录,并且在您的帖子中没有任何表示您在其中创建了目录/usr/local/terraform.
cd进入/usr/local,然后unzip是terraform的zip文件.链接的zip包含一个名为的文件terraform,因此/usr/local/terraform在您的示例中应该是一个文件.terraform通过添加添加到PATH其基本目录使其可执行.但添加/usr/local到PATH不会是一个好主意.将二进制文件放入/usr/local/bin,而不是直接放入/usr/local你没有提到你是如何重装的~/.profile.编辑此文件后,您添加的新命令不会在当前shell中自动执行.当您打开一个新shell时,它们将被执行.或者您可以在当前shell中手动执行添加的命令.
| 归档时间: |
|
| 查看次数: |
6805 次 |
| 最近记录: |