gpt4 book ai didi

linux - bash: terraform: 未找到命令,导出 $PATH 未解析

转载 作者:太空狗 更新时间:2023-10-29 12:09:59 26 4
gpt4 key购买 nike

我在 Ubuntu 中从命令行运行 terraform(exe) 的所有努力都没有成功

~/tectonic_1.7.9-tectonic.2$ terraform init ./platforms/metal
terraform: command not found

我更改了 ~/.profile 文件

PATH="$HOME/bin:$HOME/.local/bin:$HOME/bin/tectonic_1.7.9-tectonic.2:$PATH"

和后面的符号链接(symbolic link)

/usr/bin# ls -l terraform
lrwxrwxrwx 1 root root 39 dec 6 16:29 terraform -> /home/milenko/tectonic_1.7.9-tectonic.2

我不明白哪里出了问题。如果我尝试 Asere 建议的方法

ln -s /home/milenko/tectonic_1.7.9-tectonic.2/terraform /usr/bin/terraform
ln: failed to create symbolic link '/usr/bin/terraform/terraform': File exists

最佳答案

先修复,再解释:

ln -snf /home/milenko/tectonic_1.7.9-tectonic.2/terraform /usr/bin/terraform
# or equivalently:
#rm /usr/bin/terraform
#ln -s /home/milenko/tectonic_1.7.9-tectonic.2/terraform /usr/bin/terraform

目前你有 /usr/bin/terraform 指向 /home/milenko/tectonic_1.7.9-tectonic.2

这是不正确的,因为 terraform 二进制文件位于 /home/milenko/tectonic_1.7.9-tectonic.2/terraform

您需要使 /usr/bin/terraform 指向 /home/milenko/tectonic_1.7.9-tectonic.2/terraform

让我们了解这里发生了什么:

ln -s /home/milenko/tectonic_1.7.9-tectonic.2/terraform /usr/bin/terraform
ln: failed to create symbolic link '/usr/bin/terraform/terraform': File exists

为什么命令失败?由于 /usr/bin/terraform 存在,它指向 /home/milenko/tectonic_1.7.9-tectonic.2,上面的注释不会尝试替换/usr/bin/terraform,但尝试创建 /usr/bin/terraform/terraform。并且由于 /usr/bin/terraform 指向 /home/milenko/tectonic_1.7.9-tectonic.2/usr/bin/terraform/terraform 已经存在,它实际上与 /home/milenko/tectonic_1.7.9-tectonic.2/terraform 相同。因此文件存在,命令失败。

一个解决方案是删除不正确的符号链接(symbolic link) /usr/bin/terraform 然后重新运行 ln -s/home/milenko/tectonic_1.7.9-tectonic.2/terraform/usr/bin/terraform.

另一种解决方案是将-f-n 标志添加到ln,强制替换符号链接(symbolic link):

ln -snf /home/milenko/tectonic_1.7.9-tectonic.2/terraform /usr/bin/terraform

关于linux - bash: terraform: 未找到命令,导出 $PATH 未解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679661/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com