[[运算符失败,错误为“预期条件二进制运算符”

时间:2019-08-09 01:37:54

标签: linux shell unix expression

Linux bash脚本在以下行中失败。给定的错误消息。我知道我可以简单地使用if [ -f file1.txt ],但很好奇要解决此问题才能解决。

[[ -f file1.txt && (( mv file1.txt file1_old.txt )) ]]
  

期望的条件二进制运算符   预期的`)'

1 个答案:

答案 0 :(得分:1)

mv命令不应放在条件表达式中,它是您要根据条件结果执行的命令。应该是

[[ -f file1.txt ]] && mv file1.txt file1_old.txt

也不要将其放在双括号内,这是用于算术表达式,而不是命令。