切换用户时-bash: [: mBH !=: unary operator expected
时间: 2024-06-06 14:06:31 浏览: 204
这个错误通常是由于在if语句中使用了不正确的比较运算符引起的。在这种情况下,bash解释器期望使用一元运算符,但实际上使用了二元运算符或缺少比较运算符。要解决这个问题,您需要检查if语句中使用的运算符,并确保它们正确。例如,如果您使用等于运算符,则应该是==而不是=。另外,您还应该检查if语句中使用的变量是否存在或已正确设置。
相关问题
iu@liu-desktop:~/桌面$ bash 2.sh 2.sh: line 7: [: ==: unary operator expected 2.sh: line 9: [: ==: unary operator expected
这个错误消息表明,在你的脚本中 if 语句中的条件表达式没有正确地运行。具体来说,在这个脚本中,第7行和第9行的条件表达式都需要改正。
请尝试将第7行和第9行的条件表达式改为:
```
if [ "$1" = "r" ]; then
...
fi
if [ "$2" = "w" ]; then
...
fi
```
需要注意的是,条件表达式中等号两侧需要有空格,而且变量名需要用双引号括起来,否则可能会因为空格或特殊字符导致语法错误。
-bash: alias: aaa: 未找到 -bash: alias: =rm -rf: 未找到
当您尝试在Bash shell中设置别名(alias)并输入`alias aaa` 或 `alias =rm -rf` 时,如果收到"未找到"错误提示,这意味着系统无法找到您所指定的别名。Bash别名是一种快捷方式,允许用户为常用的命令创建简短的名称。然而,由于这里提到的别名不存在于您的shell配置中,或者是拼写、大小写、语法有误,或者是权限限制导致的。
例如,如果您试图设置一个删除文件的危险别名 `alias =rm -rf`,而实际上应该写作 `alias rmall='rm -rf'`,并且要在`.bashrc` 或 `.bash_profile` 文件中添加这个别名才会生效。请检查是否正确地设置了别名,并确认它在有效的路径下且拥有正确的格式。
阅读全文