source /.bash_profile 命令不起作用

问题描述 投票:0回答:3

在使用以下命令在 .bash_profile 文件中定义新别名后,我尝试在 Mac(操作系统 Catalina 10.15.6)上刷新别名:

source ~/.bash_profile

但是终端一直给出这个错误信息:

-bash: s: command not found

这很令人困惑,因为这个命令工作的时间最长。我什至将它作为别名包含在我的 .bash_profile 文件中,它工作得很好。

我知道问题可能与我的 PATH 中的错误有关,但我从未对我的 PATH 进行任何编辑,所以不知道问题可能是什么?

提前致谢。

bash terminal alias macos-catalina
3个回答
1
投票

我的第一反应是检查 ~/.bashrc 和 /etc/bashrc 是否存在。这就是我通常定义别名的地方,在我看来,一个糟糕的别名可能是你的问题。

我并不是说这是你做的,尽管它可能是。只需检查您的 rc 和配置文件,并查找可能与源代码发生任何冲突的任何别名。


0
投票

我怀疑

source
命令工作正常,问题是 ~/.bash_profile 本身中有一条错误的行,看起来它正在尝试运行名为
s
的命令。我会在那里查找问题。

通过

bash -x ~/.bash_profile
在 xtrace 上运行它可能会有所帮助 - 在像这样的单独进程中运行它不会产生任何在当前 shell 中
source
可能需要的副作用,但你可以看到它正在尝试做什么以便您可以修复它。

(您也可以在

set -x
之前按
source
并获取 xtrace 并在当前 shell 中运行;只需确保在之后按
set +x
,否则您的 shell 会话将充满调试输出。)


0
投票

我用

source <(helm completion zsh)
代替
source <(helm completion bash)
,它成功了!

首先,我在我的

source <(helm completion bash)
中设置
bash_profile
,它显示以下错误
/dev/fd/12:type:332: bad option: -t
.

然后我将其替换为

source <(helm completion zsh)
并且它可以正常工作

© www.soinside.com 2019 - 2024. All rights reserved.