如何在bash脚本中使用变量

发布于 2025-01-14 13:37:37 字数 193 浏览 6 评论 0原文

user= whoami
echo $user

cd /home/${user}

我无法通过此方法更改目录。

输出

pbsh56@pbsh56:~/Documents$ source one.sh
pbsh56

pbsh56@pbsh56:/home$ 
user= whoami
echo $user

cd /home/${user}

I unable to change directory by this method.

output

pbsh56@pbsh56:~/Documents$ source one.sh
pbsh56

pbsh56@pbsh56:/home$ 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无声无音无过去 2025-01-21 13:37:37

间距很重要。由于命令中存在空格,这不会执行您期望的操作:

user= whoami

它的作用是定义一个名为 user 的空变量,然后使用该变量调用 whoami 命令添加到环境中的空变量。您看到的“pbsh56”来自 whoami 命令,而不是来自 echo

你想要的是

user=$(whoami)
echo $user
cd /home/$user

Spacing is important. Because of the space in your command, this doesn't do what you expect:

user= whoami

What that does is define an empty variable called user, and then calls the whoami command with that empty variable added to the environment. The "pbsh56" you see is from the whoami command, not from the echo.

What you want is

user=$(whoami)
echo $user
cd /home/$user
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文