문제

내가하고 싶은 것은 SSHFS를 통해 현지 PC의 USS를 통해 메인 프레임의 일부 파일을 마운트 할 수 있다는 것입니다. 나는 그렇게 할 수 있지만 SSHFS는 EBCDIC에서 ASCII/유니 코드로 변환을 곧바로하지 않습니다. 내가 설정할 수있는 깃발이 있습니까?

또는 SSHFS에 추가 할 수 있도록 ASCII 변환에 대한 ebcdic을 수행하는 라이브러리를 아는 사람이 있습니까?

건배

표시

도움이 되었습니까?

해결책

투명한 숯불 변환은 매우 위험한 게임이라는 점에 유의하십시오. 당신은 절대적으로 당신이 할 것이라고 확신합니까? 절대 SSHFS를 통해 EBCDIC 파일 외에는 읽기? 이진 데이터가 있으면 어떻게해야합니까?

일부 시스템은 과거에 투명한 변환을 사용했습니다.

  • FTP의 악명 높은 "ASCII 모드", 많은 이진 다운로드가 엉망이되었습니다.
  • Linux의 VFAT 파일 시스템은 다음과 같이 지적합니다. "LSEEKS를 계산하는 프로그램은 커널 내 텍스트 변환이 마음에 들지 않습니다. 여러 사람들 이이 번역에 의해 데이터를 망쳤습니다.주의하십시오!"

그래서 결과를 인식하도록 강력히 조언합니다.

EBCDIC을 처리 할 수있는 편집기를 사용하지 않는 이유는 무엇입니까? Vim Eg는 그것을 할 수 있습니다 (컴파일 된 경우).

다른 팁

문자 세트 변환을위한 여러 라이브러리가 있습니다 - ICONV (일반적으로 C 라이브러리의 일부; 예를 들어 참조하십시오. iconv_open) 그리고 GNU 리코드 생각 나다.

원래 질문 이후 많은 시간이 지났다는 것을 알고 있지만 정보를 여기에 남겨 두겠습니다.
ASCII와 EBCDIC 간의 자동 변환을 추가하는 SSHFS에 대한 패치를 썼습니다. 여기에서 찾을 수 있습니다. https://github.com/vadimshchukin/sshfs-ebcdic

패치는 변환 해야하는 파일의 정규 표현식을 정의하는 "-t"명령 줄 옵션을 추가합니다. 예를 들어 sshfs -t".*" 모든 파일의 변환을 정의합니다.

EBCDIC의 다양한 "풍미"가 있기 때문에 변환 테이블을 "하드 코드"해야했습니다. ICONV는 필요에 따라 내 시스템의 eBCDIC로 ASCII 간의 텍스트를 변환하지 않았습니다. 여기서 장점은 누군가가 필요에 따라 해당 번역 테이블을 쉽게 변경할 수 있다는 것입니다.

그건 그렇고 나는 Win-Sshfs에 대해 같은 패치를 썼습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top