2011-04-13 3 views
1

탠덤 HP/논스탑 환경에 파일을 FTP로 보내려고합니다. 레코드는 다른 C 프로세스를 사용하여 읽은 C 프로세스를 사용하여 파일에 기록됩니다.바이너리 모드에서 FTP로 구조화 된 파일

파일 자체에는 표준 텍스트 편집기를 사용하여 읽을 수없는 일부 레코드가 들어 있습니다. 이 파일을 올바르게 전송하려면 Binary 모드로 전송해야한다는 것을 알았습니다. 이진 모드에서 전송을 시도하면 다음과 같은 오류가 발생합니다.

ftp> bin 
200 Type set to I. 
ftp> put SM11098 
200 PORT command successful. 
553 Error: Structured file transfer only allowed in Ascii mode, 
ftp> ascii 
200 Type set to A. 
ftp> put SM11098 
200 PORT command successful. 
150 Opening data connection for SM11098 (10.220.98.237,4078d). 
552 SM11098: Relative file record length > Maximum record length 
ftp: 1576960 bytes sent in 4.08Seconds 386.70Kbytes/sec. 

나는 위의 오류를 Google에 시도했지만 아무 것도 나오지 않았습니다. 구조화 된 파일은 구조화 된 레코드가 들어있는 바이너리 파일처럼 들립니다. 이것이 바이너리 모드에서 FTP로 할 수 있습니까? FTP 프로그램에서 ASCII 모드를 사용해야합니다.

두 번째 오류는 무엇입니까? (예 : "상대 파일 레코드 길이> 최대 레코드 길이")

답변

0

귀하의 게시물은 아직 말하지 않지만 귀하가 FTPing하는 것처럼 들리지만 HP NonStop에서 HP NonStop으로 소스 파일은 "구조화 된". NonStop 환경에서 "구조화 된 파일"은 * nix 또는 MS-DOS 시스템에서 발견되는 파일 중 하나와 다른 의미를 지니고 있음을 알아야합니다 (NonStop의 구조화되지 않은 파일) . 구조화 된 파일은 바이트의 배열이 아니지만 레코드 경계와 잠재적으로 다른 특성을 가지며이 중 일부는 SQL 테이블의 특성과 유사합니다.

FTP는 일반적으로 구조화되지 않은 파일에 대해 작동하지만 구조화 된 파일에 대해서는 추가 매개 변수로 속일 필요가 있습니다. (FTP NonStop 확장은 불행하게도 NonStop의 시스템 소프트웨어에서 발견 된 최악의 설계에 관한 것입니다.) 기본적으로 put 명령의 and 매개 변수 뒤에있는 속성을 구조화 된 파일 유형 ("e", " "k"또는 "r") 및 아마도 다른 속성. 그건 당신이 구조화 된 파일을 전송하는 FTP를 알려줍니다. 문법을 올바르게 사용하려면 설명서를 확인해야 할 것입니다. 이진 데이터가 있음에도 불구하고이를 위해 "ASCII 모드"를 사용해야합니다.

("상대 파일 레코드 길이"오류는 구조화 된 파일 전송 실패로 인한 것일 수 있습니다. 원본 파일이 상대적으로 구조화 된 파일 인 경우 파일 유형 "r"(상대 경로)을 사용하는 것이 적합합니다.)

그러나 두 시스템이 NonStop 인 경우 일반적으로 "확장"네트워킹 (예 : IP)을 사용하여 네트워크에 연결 한 다음 FTP를 사용하는 것보다 파일을 복사하는 것이 더 쉽습니다. 일반 명령 인터프리터를 사용하고 시스템 이름을 일반 복사 또는 중복 명령의 대상 파일 이름의 일부로 지정하십시오.