以下脚本旨在在目录中的所有文件上运行程序“senna”,并将每个文件的输出(保留输入文件名)写入另一个目录
for file in ./Data/in/*;
do
./senna -iobtags -usrtokens -posvbs -srl < $file > ./Data/out/$file
done
尝试执行脚本时,会出现以下错误。
-bash-4.0$ sh run.s
'un.s: line 1: syntax error near unexpected token `
'un.s: line 1: `for file in ./Data/in/*;
该脚本具有与上述完全相同的代码行,并且没有`。也许暗示着其他的东西。帮助解决错误将不胜感激。
最佳答案
脚本中的行尾是错误的。通过dos2unix
传递它以消除CR。
关于shell - 意外 token 附近的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12303377/