在我的Mac(OS Catalina 10.15.6)上,使用以下命令定义新别名后,我试图刷新我的别名:
source ~/.bash_profile
但是终端始终显示以下错误消息:-bash: s: command not found
这令人困惑,因为该命令在最长的时间内一直有效。我什至把它作为别名包含在我的.bash_profile文件中,在这里工作正常。
我知道问题可能是由于我的PATH错误而导致的,但是我从未对PATH进行任何编辑,所以不知道问题可能是什么?
谢谢。
答案 0 :(得分:1)
我的第一个直觉是检查〜/ .bashrc和/ etc / bashrc是否存在。这就是我通常定义别名的地方,在我看来, 可能 是一个不好的别名。
我并不是说这是您制作的,尽管可能是。只需浏览您的rc和配置文件,然后查找任何可能与源冲突的别名即可。
答案 1 :(得分:0)
我怀疑source
命令工作正常,问题是〜/ .bash_profile本身中的一行错误,看起来像是在尝试运行名为s
的命令。我会在那里寻找问题的。
通过bash -x ~/.bash_profile
在xtrace上运行可能会有所帮助–在单独的进程中运行它不会像现在那样source
将其预期产生的任何副作用外壳程序,但是您可以看到它正在做什么,以便可以对其进行修复。
(您也可以在set -x
之前source
并同时在当前shell中运行xtrace和运行;只需确保在此之后set +x
,否则您的shell会话将充满调试输出。)