我的linux shell脚本有问题。
#! /bin/bash
find /sdcard/ -type f -iname "*.srt" -print >> /sdcard/files
count=`wc -l /sdcard/files |cut -d'/' -f1`
for (( c=1; c<=$count; c++ ))
do
line=`sed -n ''$c'p' /sdcard/files`
cat "$line" | sed -e 's/č/c/g' > "$line".srt""
rm "$line"
done
rm /sdcard/files
我知道这不是最好的方法,但这就是我能用我的知识做的事情
正如您所看到的,它会找到所有srt文件,然后用“c”替换所有“č”字符。但它不适用于我下载的文件
然而,当我创建一个新文件并在里面写“č”(用我的键盘)时,它会替换它应该的。我不明白为什么?
答案 0 :(得分:3)
我认为我们发现了原因,现在是修复:
vim somefile.srt -c ":set bomb" -c ":set fileencoding=utf-8" -c ":wq"
还有一种肮脏的方式
echo -e "\xC2\xA0" >> somefile.srt
我尝试了应该进行转换的iconv
工具,但它没有帮助。