짧은 이야기 : (CMD 배치를 사용하여) 클라이언트에서 서버 (BASH 사용)에서 파일의 쓰기 상태를 가져 오는 방법이 필요합니다.쿼리 파일 쓰기 일괄 처리 (CMD 클라이언트에서 BASH 서버로)
장기간 lurker, 처음 포스터. 내가 찾고있는 유사 콘텐츠에 대한 많은 검색을 수행했지만 아직 충분한 데이터를 찾지 못했습니다.
(클라이언트가 알 수없는 패키지가 설치된 WinOS [XP - up] 일 수 있기 때문에) CMD에 배치 파일을 쓰고 있습니다. 배치는 puTTY의 "plink"를 사용하여 SSH를 통해 서버에 연결합니다. 서버에 연결되면 plink는 새 파일에 데이터를 쓰는 명령을 실행합니다. 파일이 작성되면 PSCP를 사용하여 파일을 클라이언트에 복사합니다. 지금까지는 그렇게 좋았습니다. 나는이 모든 것을 성공적으로 수행했다.
해당 파일의 생성은 즉시 발생하지만 모든 데이터를 쓰는 데 걸리는 시간은 알려지지 않았거나 가변적입니다. 따라서 파일을 완료 한 시점을 확인한 후 복사하는 자동화 된 방법이 필요합니다. 상황에 따라 XX 초 동안 단순히 시간 초과/절전을 사용하는 것은 불가능합니다.
필자가 지금까지 취한 접근법은 "stat -c '% s'filemane"을 사용하여 파일 크기를 반복적으로 잡아서 grab1 EQU grab2가 완료 될 때까지 루프에서 실행하는 것입니다. 나는 그것을 처리하기 위해 CMD 배치에 stat의 출력을 얻을 수 없기 때문에이 어려운 것을 발견하고있다.
1 :이 방법 (통계 결과가 반복적으로 CMD로 전달됩니까?)이 최선의 방법입니까? BASH에 뭔가가있을 수 있습니까?
Q2 : Q1이 참이면 통계 결과를 구문 분석/분석하기위한 변수로 CMD 배치에 가져 오는 방법에 대한 아이디어가 있습니까?
미리 제안 해 주셔서 감사합니다. DCT
왜 PLINK가 종료되기 전에 파일을 완료하는 명령을 내릴 수 없습니까? – Ben
파일을 만들고 쓰는 프로그램을 제어 할 권한이 없습니다. 일단 "파일 만들기"명령을 내리면 성공 메시지로 응답하지만 파일이 반드시 완료되지는 않습니다. 성공 메시지가 파일 완성에 "연결"되면이 문제를 해결할 필요가 없습니다. – DCT
"CMD 배치에 stat 출력을 처리 할 수 없기 때문에이 작업을 어렵게 생각합니다." 명령에서 출력을 CMD.EXE로 처리하는 과정에서 설명하는 어려움 때문에 CMD 대신 WSH/VBScript를 사용하는 것이 좋습니다. – Ben