0

我运行我的 shell 脚本但返回一个错误“意外标记‘完成’附近的语法错误”,我想知道为什么会这样?重要的是我可以在另一台计算机上运行它...

请参阅下面的代码:

input=$1
folder=$2
output=$3
while read line
do
  url=`echo $line | awk -F'\t' '{print $2}'`
  id=`echo $line | awk -F'\t' '{print $2}' | sed 's/http:\/\/buy.yahoo.com.tw\/gdsale\/gdsale.asp?gdid=//g'`
  ans=`echo $line | awk -F'\t' '{print $3}'`
  flag=`grep "$ans" $folder/$id".spec"`
  if [ -n "$flag" ]; then
      echo "yes   $line" >> $3
  else
      echo "no    $line" >> $3
  fi
done < $input

谢谢!

4

1 回答 1

0

如果它在一台机器上运行而不在另一台机器上运行,则不同机器上的脚本文件存在差异。也许你在一台机器上有不同的行尾——用dos2unix

于 2012-05-10T13:10:12.173 回答