LAN 서버의 소켓에서 Python 스크립트를 실행하고 싶습니다. 숫자 추측 스크립트를 작성했으며 다른 클라이언트가 포트(예: 1234)에 연결하여 사용할 수 있도록 소켓에서 실행되기를 원합니다. 나는 이것이 파이썬의 소켓 프로그래밍을 통해 달성될 수 있다는 것을 알고 있습니다. 하지만 문제는 왜 실패하는지 묻는 것입니다.
ncat 192.168.0.108 -lvp 1234 -e /usr/bin/python3.5 number_game.py
스크립트:
#!/usr/bin/python3.5
import random
num=random.randint(1,20)
flag=0
print("Welcome to the game...")
for i in range(1,7):
print("Take a guess")
guess=int(input())
if guess > num:
print("Way too high")
else:
if guess < num:
print("Way too low")
else:
flag=1
break;
if flag == 1:
print("You made it in "+str(i)+" attempts")
else:
print("better luck next time")
실수:
Ncat: Version 7.31 ( https://nmap.org/ncat ) Ncat: Got more than one port specification: 1234 number_game.py. QUITTING.
답변1
해결책
포트에서 수신 대기하고 1234
해당 IP를 사용하여 컴퓨터에 연결하려고 합니다.192.168.1.108
이렇게 할 수 없습니다. 다음을 사용하여 연결을 수신합니다.
ncat -lvp 1234 -e "/usr/bin/python3.5 number_game.py"`
또는 다음 명령을 사용하여 원하는 시스템에 대한 연결을 시작합니다.
ncat -v -e "/usr/bin/python3.5 number_game.py" 192.168.0.108 1234
노트
ncat
(또는 ) 을 사용하여 연결을 시작할 때 (또는 ) 및 마지막 매개변수를 nc
유지해야 합니다 .IP
hostname
port
ncat
설명서의 요약을 확인하세요 .ncat [OPTIONS...] [hostname] [port]