Solaris 코드를 Linux로 마이그레이션하는 중에 SQL 스크립트에 사용되는 파이프 기호가 끊어지는 문제가 발생했습니다.
¦
Solaris에서 완벽하게 실행되는 중단 기호( )(및 생성된 출력)가 있는 여러 SQL 스크립트가 있습니다 . 하지만 리눅스에서는 이를 역물음표 표기법( ¿
)으로 변환합니다. 토드에서는 이렇게 나오네요
리눅스:
string1 := string1 || chr(20) || var || ': ' || nvl(var_val, 'NULL') || '¿' ;
솔라리스:
string1 := string1 || chr(20) || var || ': ' || nvl(var_val, 'NULL') || '¦' ;
내가 생각할 수 있는 최선의 방법은 이것이 인코딩과 관련이 있을 수 있다는 것입니다. 그러나 그것이 사실인지 아니면 해결책인지는 확실하지 않습니다. 어떤 단서도 매우 도움이 될 것입니다.
버전 및 기타 세부 정보를 추가하도록 편집됨: GNU Linux 버전 2.6.32 사용
# locale
LANG=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
Solaris는 LANG이 비어 있다는 점을 제외하면 거의 동일한 값을 갖습니다.