gpt4 book ai didi

bash - 在谷歌云上的 bash 中获取正确的 $HOME 目录

转载 作者:行者123 更新时间:2023-12-04 19:43:40 36 4
gpt4 key购买 nike

我的 bash 脚本有以下代码,我在谷歌云计算引擎上执行了它。
mv $HOME/openvpn-2.4.0/ /etc/openvpn
这里的问题是 $HOME扩展到 /root而不是 /home/myusername .
echo $HOME在命令提示符下给出 /home/myusername正如预期的那样。

我在这里做错了什么?

编辑 1

如果我使用 sudo 执行 bash 脚本 $HOME变量给出 /root ,但是当我在没有 sudo 的情况下执行脚本时,$HOME 变量给出 /home/myusername正如谷歌云上的预期

最佳答案

当您使用 sudo 运行 bash 脚本时,它会以 root 用户身份运行脚本,因此 $HOME 变量给出/root。

一种选择是将 $HOME 环境变量作为命令行选项传递给 bash 脚本。然后,您可以在 bash 脚本中以 $1 的形式访问此变量的值。

关于bash - 在谷歌云上的 bash 中获取正确的 $HOME 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42998328/

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