“export:命令未找到

时间:2015-03-15 20:25:50

标签: macos bash path

当我在我的Mac上打开终端时显示

Last login: Sun Mar 15 22:12:02 on ttys000
-bash: “export: command not found
-bash: “export: command not found
-bash: “export: command not found
-bash: “export: command not found

(我的回音$ PATH)

MacBook-Air-Tim:~ timreznik$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin:/Users/timreznik/bin:/usr/local/bin
MacBook-Air-Tim:~ timreznik$ 

我已经尝试将.bash_profile编辑为

# general path munging
PATH=${PATH}:~/bin
PATH=${PATH}:/usr/local/bin

但它仍然继续向我显示“导出:当我启动终端时找不到命令...

P.S。所有的命令似乎都有效,但我的内在完美主义者正在尖叫!

2 个答案:

答案 0 :(得分:5)

首先,export是内置的shell:

$ type export
export is a shell builtin

这意味着PATH无关紧要。

其次,错误消息表明脚本正在尝试运行命令“export。没有这样的命令:

$ “export
bash: $'\342\200\234export': command not found

解决方案是从字符串export之前删除虚假字符。

这个拼写错误的命令位于shell的一个初始化文件中。其中包括:~/.bashrc/etc/bash.bashrc~/.bash_profile~/.bash_login~/.profile及其中包含的所有文件。

或者,以下命令将告诉您哪些文件以及这些文件中的哪些行具有拼写错误的export命令:

PS4='+ $BASH_SOURCE:$LINENO:' BASH_XTRACEFD=7 bash -xlic ""  7>trace.out
grep '“export' trace.out

有关上述工作原理的详细信息,请参阅this post

答案 1 :(得分:0)

我遇到了类似的问题,罪魁祸首是anaconda与变量名称之间的不间断空格。 要解决此问题,只需将其替换为常规空格字符即可。

详细信息: 我在python中有以下内容:

python2

启动新终端时,我会得到

export

但是,如果我们在文件上运行.bash_profile,我们可以清楚地看到问题所在(点是不可打印的字符:

export a=foo

字节序列-bash: export a=foo: command not found 代表non-breaking space