gpt4 book ai didi

Bash:添加路径后无法调用脚本

转载 作者:行者123 更新时间:2023-12-02 21:10:50 29 4
gpt4 key购买 nike

我正在编写自己的 unix 脚本,因此我想为 Bash 添加一个新目录。我像这样在 .bash_profile 中添加了一些内容。

PATH="~/Documents:${PATH}"
export PATH

在我的~/Documents中,有一个名为test的文件,其内容为

#!/usr/bin/env python3.5
print("hahahhah")

我也用过

chmod 755 test

使其可执行。

但我无法直接在终端中调用它。 ./test 照常工作。出了什么问题?

更改为后

PATH="$HOME/Documents:${PATH}"
export PATH

没有任何反应。

FDSM_lhn@9-53:~/Documents$ test
FDSM_lhn@9-53:~/Documents$ ./test
hahahhah

解决方案:根本原因是我有一个与默认命令同名的命令,所以它无论如何都不起作用!更改名称就足够了!

最佳答案

波浪号不会在字符串内扩展。因此,通过引用赋值的右侧,您可以防止它被扩展,并在您的 PATH 变量中获得一个文字 ~ ,这对您没有任何帮助。 p>

您有两种方法可以解决此问题:

  1. 在赋值中删除引号(是的,这是安全的,即使对于带有空格等的 $PATH 值也是如此)。

  2. 使用 $HOME 而不是 ~

我更喜欢第二种解决方案,但第一种解决方案对于这种情况完全有效。

请注意,在您直接进行赋值的地方,您通常不能只是删除引号并尝试使用~ 导致问题。

在这种情况下,您最终会发现类似 this 的问题答案如 this和像this这样的丑陋的东西.

关于Bash:添加路径后无法调用脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33643797/

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