我正在尝试使用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”是我尝试转换文件编码的目录。有什么问题?
答案 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 "*")