终端不理解一些简单的命令,并在尝试将目录添加到 PATH 后继续尝试安装包“sed”

终端不理解一些简单的命令,并在尝试将目录添加到 PATH 后继续尝试安装包“sed”

学习linux所以我写了一个简单的脚本来测试不同的脚本变量和参数。尝试将目录添加到我的路径中,但出了问题。我什至无法使用 ls 命令...

我不知道发生了什么,请向我解释这是如何发生的以及如何解决它。谢谢重击外壳

答案1

首先是关于 PATH 变量。

我会推荐这个设置:

mkdir ~/scripts
echo 'export PATH=/home/jack/scripts:${PATH}' >> ~/.bashrc
. ~/.bashrc

我不认为将 ~/Documents 添加到 PATH 是最佳实践。将导出子句添加到 .bashrc 使其永久化。大括号将变量名称与周围的文本隔离。变量名称区分大小写。

所以当你这样做的时候

PATH=$path:~/Documents

您实际上破坏了您的 PATH,因为 $path 被认为是不同的变量,并且很可能没有设置。我不太确定,但 shell 也可以尝试将行的其余部分解释为变量名。

PATH=${PATH}:~/Documents

会起作用的。

我认为解决您的情况的最简单方法是注销并重新登录。这会将 PATH 设置为默认值。

相关内容