简单Shell脚本不会附加到文件

时间:2011-02-25 18:29:50

标签: linux shell

以下脚本不起作用:

#!/bin/sh
FILE="/root/.bashrc"
if [ -f $FILE ]
 then

 COMMAND="alias ls='ls -la --color=always --human'"

 if grep -q "$COMMAND" $FILE
 then
  echo "NOT CHANGED, Already existing: $COMMAND in $FILE"
 else
  $FILE << $COMMAND
  echo "CHANGED: $COMMAND in $FILE"
 fi

else
  echo "$FILE does not exist, will not apply changes: $COMMAND"
fi

我收到此错误:32:Syntax error: end of file unexpected (expecting "fi")

我非常感谢你的建议。我是一个完整的shell新手,我做了一些测试,但不明白为什么会出现这个错误。

谢谢! 延

1 个答案:

答案 0 :(得分:3)

第12行的语法没有附加,它启动了一个heredoc。

echo "$COMMAND" >> "$FILE"