意外令牌附近的语法错误`('在下面的代码中

时间:2014-01-06 10:49:01

标签: bash shell

我有一个非常小的shell脚本。当我运行它时,运行流程。它给出了“意外令牌附近的语法错误”(“。非常基本的问题,但很抱歉找不到。

foreach i ( `cat list407`)
mkdir cells/${i}
 cp /<path>/$i/${i}.gds cells/${i}/${i}.gds
end

错误:

flow: line 1: syntax error near unexpected token `('
flow: line 1: `foreach i ( `cat list407`)'

2 个答案:

答案 0 :(得分:4)

您使用csh语法执行bash导致错误。

使用csh执行脚本,或使用bash说:

while read -r i; do
  mkdir "cells/${i}"
  cp "/<path>/${i}/${i}.gds" "cells/${i}/${i}.gds"
done < list407

答案 1 :(得分:1)

for i in $(cat list407); do
  mkdir cells/${i};
  cp /<path>/$i/${i}.gds cells/${i}/${i}.gds;
done