/bin/test 以红色打印“目录不在工作区内:/Users/myusr”。这是一个错误吗?

/bin/test prints 'Directory isn't within a workspace: /Users/myusr' in red. Is this an error?

安装 ocaml 和 opam 后,它已将此行添加到我的 .bash_profile (macOS)。

test -r /Users/myusr/.opam/opam-init/init.sh && . /Users/myusr/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true

该脚本使用相同的模式调用了更多。

每次调用这个 test 二进制文件,位于 /bin/test 打印(红色):

Directory isn't within a workspace: '/Users/myuser'

这是一个错误吗?这是什么意思?如果我不喜欢在打开终端时看到红色(类似错误的)消息,我是否应该从所有这些脚本调用中删除对 test 的调用?

我找不到这方面的信息。

正如评论中所讨论的,在 运行 type -a test OP 之后 意识到某些东西已经覆盖了他们机器上的 test 命令, 因此 test 的异常行为。通常,type -a test 应该 return 像这样:

test is a shell builtin
test is /usr/bin/test
test is /bin/test

但可以修改 test,方法是将其别名化或将其转换为 功能:

$ alias test='echo fake test'
$ type -a test
test is aliased to `echo fake test'
test is a shell builtin
test is /usr/bin/test
test is /bin/test
$ test
fake test