我试图写一个shell脚本来删除0kb文件,但if语句一直给我错误,我想知道你是否可以帮我解决
我有:
#!/bin/sh
EMPTY_FILE=$(find ${1-.} -size 0)
echo $EMPTY_FILE
echo "delete"
read text
if [ "$text" == "yes" ]; then echo yes; fi
错误是
./deleteEmpty.sh: 6: [: yes: unexpected operator
任何有关错误的帮助都很有用!感谢
答案 0 :(得分:3)
在plain sh中,相等运算符是=
。 ==
是一种基础。将您的shebang行更改为#!/bin/bash
,或将测试更改为:
if [ "$text" = "yes" ]; then echo yes; fi
如果你使用bash,I recommend using [[
instead of [
。
#!/bin/bash
if [[ $text == yes ]]; then echo yes; fi
答案 1 :(得分:0)
尝试使用双括号:
if [[ "$text" == "yes" ]]; then echo yes; fi
答案 2 :(得分:0)
我想你想用bash。在这种情况下,脚本的第一行应该是
#!/bin/bash