我使用以下代码来测试函数是否存在,但 Bash 给出以下诊断:
[: =: unary operator expected
代码是:
if [ $(type -t deactivate) != function ];
这应该如何以独立于shell脚本的方式表达?
通常不可能对
csh
和 bash
使用相同的语法。
至于脚本中的错误:这可能是由于
type -t deactivate
不产生输出而引起的。正确的引用将解决这个问题:
if [ "$(type -t deactivate)" != "function" ] ; then