意外令牌“完成”附近的cygwin语法错误

时间:2014-01-27 18:52:30

标签: bash cygwin

我正在尝试使用cygwing脚本将我的ansi文件的编码转换为utf8编码。以下是剧本:

#!/bin/bash
FROM=ANSI
TO=UTF-8
ICONV="iconv -f $FROM -t $TO"
# Convert
find webazmoon7/ -type f -name "*" | while read fn; do
cp ${fn} ${fn}.bak
$ICONV < ${fn}.bak > ${fn}
rm ${fn}.bak
done

但是我在意外令牌“完成”附近遇到语法错误。 “webazmoon7”是我尝试转换文件编码的目录。有什么问题?

1 个答案:

答案 0 :(得分:1)

尝试引用变量并像这样更改find/while循环:

while read -r fn; do
   cp "${fn}" "${fn}.bak"
   iconv -f "$FROM" -t "$TO" < "${fn}.bak" > "${fn}"
   rm "${fn}.bak"
done < <(find webazmoon7/ -type f -name "*")