如何使用cron作业从文件中删除重音?

时间:2016-06-10 15:48:27

标签: bash shell sed diacritics iconv

我有一个.sh文件,使用iconv将重音转换为unaccent chars,所以我有这个文件:

$FUT2
#Containing
<span>Panamá</span>

从命令行手动运行.sh:

#!/bin/sh
iconv -f utf8 -t ascii//TRANSLIT "$FUT2" > "$FUT"

我进入文件:

<span>Panama</span>

很好,但是当我从cron运行它时,使用webmin并设置一个预定的cron作业,然后我得到:

<span>Panam?</span>

,如果我使用sed

从命令行手动运行.sh:

#!/bin/sh
sed -e 's/[á]/a/g;s/[é]/e/g;s/[í]/i/g;s/[ó]/o/g;s/[ú]/u/g'  "$FUT2" > "$FUT"

<span>Panama</span>

从webmin运行

<span>Panamaa</span>

.sh没有BOM的UTF-8

所以任何想法如何解决它或任何其他方式如何替换口音? 的由于

1 个答案:

答案 0 :(得分:1)

您是否尝试在crontab命令中设置var LANG = en_US.UTF-8?

0 5 * * 1 LANG=en_US.UTF-8 iconv -f utf8 -t ascii//TRANSLIT "file1" > "file2"