bash 파일 내에 sed 명령어를 넣었는데, crontab 으로 실행했을 때 먹통이 되는 경우
예) a.sh
sed -i 's/find/repl/g' a.txt
이 경우는 a.txt 파일의 인코딩이 UTF-8 이고, crontab 실행 환경은 인코딩이 ko_KR.eucKR 인 등 서로의 인코딩이 맞지 않아 발생하는 문제임.
bash 내 인코딩 설정을 추가하면 됨.
예) a.sh (UTF-8 파일인 경우)
export LANG=ko_KR.UTF-8
sed -i 's/find/repl/g' a.txt
sed -i 's/find/repl/g' a.txt
이렇게 하면 실행환경의 인코딩이 변경되어 정상 동작
'Programming > 쉘 프로그래밍' 카테고리의 다른 글
[Shell] string 일부분 제거하기 (%, %%, #, ## 연산자) (0) | 2023.12.07 |
---|---|
소수점 두자리에서 자르기, 소수점 세자리에서 반올림하기 (0) | 2023.09.08 |
awk 응용 예제 정리 (0) | 2019.01.15 |
쉘스크립트에서 성공여부 확인 방법 (0) | 2017.06.27 |
같은 줄에 문자열 겹쳐 쓰기 (0) | 2017.06.23 |