2011-10-29 3 views
4

유닉스 용 netcat을 사용하고 있습니다.Netcat : 명령 출력에서 ​​원격 청취자에게 연속 스트림을 보내는 방법이 있습니까

python script.py &> logfile.txt을 실행하면 연속적으로 캡처됩니다.

  1. python script.py &> nc 127.0.0.1 8011
  2. python script.py > nc 127.0.0.1 8011
  3. nc 127.0.0.1 8011 < python script.py
:

내가 보낸 사람에 대한 리스너 (클라이언트)와 다음 (호스트 또는 서버)에 nc -l -p 8011을 시도, 원격으로이를 복제하려면

하지만 아무 것도 작동하지 않는 것 같습니다. 도와주세요.

+1

메신저 netcat을 실행하고 있습니다. 문제는 당신이 더 큰 부호 (>)를 ​​사용하여 출력을 FILE로 리다이렉트하는 것인데 그것이 맞을 것이지만 COMMAND로 리다이렉트하려면 파이프 (|)를 사용해야하므로 파이프 처리를 시도하십시오. 보낸 사람 측에서 파이썬에서 nc로, 수신자에서 파일 – weberik

답변

2

이게 당신이 쓴거야?

수신기 :

nc -l 8011 >logfile.txt 

보낸 사람 :

python script.py 2>&1 | nc 127.0.0.1 8011 

것은 먼저 수신기 코드를 실행해야합니다.


편집 : 당신이 different versions of netcat의 많은 거기에 인식하지 않은 경우; 그들 모두는 약간 다른 논쟁을 받아들입니다. (예를 들어, nc.traditional 데비안에서 포트 1234에서 듣기 위해 nc -l -p 1234을 원합니다. 호스트가 지원하지 않는다면 플래그를 사용하지 않으면 BSD nc (예 : OS X)가 단지 nc -l 1234ncat을 원할 수 있습니다. IPv6) - 매뉴얼 페이지를 읽고 실제로 원하는 조합을 찾으십시오. 하나 약간의 수정과

+0

으로 리디렉션하지 않습니다. 원격으로 출력 리디렉션을 복제하려고합니다. –

+0

사실, 여기에 추가하고 싶습니다. (지금부터 몇 시간 동안 NC를 공부 했으므로) -q와 -e는 netcat의 모든 특성에 보편적이지 않습니다. infact mac도 지원하지 않습니다. 엘. 어쨌든, 이것은 내 질문과 관련이 없습니다. –

+0

Mac OS X Lion은'-l'을 지원합니다. – Benjie

1

완벽한 대답 : "포트"에 대한 -p를 추가

수신기 : 나는 NC 도움말 파일에서 가져온

nc -l -p 8011 >logfile.txt 

(NC -h) 귀하의 제안

를 사용하여

보낸 사람 : 나는 그럴 필요

nc -h 2>&1 | nc 127.0.0.1 8011 

012

nc -h > logfile.txt 
nc -h >> logfile.txt 

결코 작동하지 않는.

난 내가 기압을 재현하지 못할 때문에 그냥이 코멘트를 게시 다시 2 cmd.exe를의

덕분에 Windows 7 용

관련 문제