Shell比较不适用于Synology

时间:2016-02-19 18:53:53

标签: linux shell synology

这让我疯了。我认为这与Synology有关

这是在Synology服务器上运行的。

### VARIABLES ###
LOGIF=/volume7/homes/admin/scripts/data/achclean-logi.txt
HOWOLD=$(cat $LOGIF | wc -l)
# END DEFINITIONS


if (( ${HOWOLD} >= 7 )); then
  echo -e "WORKS" >> 
fi  

我在终端中收到此错误:scriptname:line Number:[HOWOLD的值]:未找到

如果我在Linux,RedHat上运行它,它可以工作。

HOWOLD=$(cat dfile | wc -l)

if (( ${HOWOLD} >= 2 )); then
   echo "WORKS"
fi

编辑: 没有运气!!!!!!!!

if [ "$HOWOLD" >= "7" ]; then # if 7, then it's been 7 days!

sh:7:未知操作数

没有运气!!!!!!!!

if (( "$HOWOLD" >= "7" )); then # if 7, then it's been 7 days!

scriptname:line Number:[HOWOLD的值]:未找到

1 个答案:

答案 0 :(得分:1)

我在想这是因为无论Synology使用的是什么版本的Shell,我都会使用旧版本。

我使用-ge inplace of gt; =

来实现它
    if [ ${HOWOLD} -ge 7 ];