2016-06-10 4 views
0

나는의 iconv를 사용 unaccent 문자에 악센트를 변환 .sh로 파일을 가지고, 그래서 나는이 파일이 있습니다cron 작업을 사용하여 파일에서 악센트를 제거하는 방법?

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

내가 얻을 : 명령 줄에서 수동으로 .sh로 실행

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

을 파일 :

<span>Panama</span>

이 좋은 그게 전부지만 나는에서 수동으로 .sh로 실행 나오지

를 사용하는 경우,

<span>Panam?</span>

과 : 내가 Webmin은을 사용하여 예약 된 cron 작업을 설정, 크론에서 실행할 때, 내가 얻을 명령 행 :

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

<span>Panama</span>

<span>Panamaa</span>

의 UTF-8

BOM

없는 그래서 어떤 생각이 어떻게 방법이나 악센트를 교체하는 다른 방법으로 해결하는 .sh로 Webmin은

에서 실행

? 감사합니다.

+0

당신은 아마도 유니 코드 손상으로 끝날 것입니다. 당신은 webmin에 대해 언급했기 때문에 전체 http 파이프 라인이 관련되어 있고 프로세스의 일부 단계는 나머지와 다른 문자 세트를 사용하고 있습니다. –

+0

크론 작업은 어떻게 생겼습니까? HTTP 넌센스가 있다면 명령 줄에서 crontab을 대신 사용해 볼 수 있습니까? –

+0

이 질문은 "문자가 cron 작업에서 호출 된 스크립트에서 작동하지 않는 이유는 무엇입니까? –

답변

1

crontab 명령에서 var LANG = en_US.UTF-8을 설정하려고 했습니까?

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