어제 나는 bash 스크립트에서 tftp 프로토콜을 사용하는 방법을 물었습니다. 데비안 - bash 스크립트에서 TFTP 사용
이제 tftp 프로토콜에 문제가 있습니다. 가져오는 파일은 내 호스트 이름에 따라 다릅니다. 따라서 잘못된 호스트 이름을 입력하면 내 tftp 프로토콜이 "파일이 존재하지 않습니다!"라고 말하지 않습니다. 그는 단지 빈 파일을 생성합니다...
따라서 내 TFTP 서버에 파일이 있는지 확인할 수 있습니다. 이 같은:
find 10.1.0.203 /test/${ThisHost}.ica
이 줄은 작동하지 않는다는 것을 알고 있습니다. 이는 단지 예일 뿐입니다.
내 스크립트에서 다음과 같은 작업을 수행하고 싶습니다.
else
ThisHost=$(hostname)
if
find 10.1.0.203 /test/${ThisHost}.ica
then
tftp 10.1.0.203 << fin
get /test/${ThisHost}.ica
quit
fin
exec iceweasel /home/rpitc/${ThisHost}.ica
else
zenity --error --text="Your Hostname is wrong."
fi
fi
그래서 이것은 단지 예일 뿐입니다. 하지만 실제 명령을 사용하여 이를 수행하는 방법을 알고 있다면 정말 좋습니다!
답변1
tftp의 도움에 따르면 다음을 수행할 수 없습니다.
tftp> ?
Commands may be abbreviated. Commands are:
connect connect to remote tftp
mode set file transfer mode
put send file
get receive file
quit exit tftp
verbose toggle verbose mode
trace toggle packet tracing
status show current status
binary set mode to octet
ascii set mode to netascii
rexmt set per-packet retransmission timeout
timeout set total retransmission timeout
? print help information
ls
또한 어떤 파일이 있는지 간단히 볼 수도 없습니다 . TFTP(Trivial FTP)는 FTP의 매우 효율적인 형태이므로 파일을 확인해야 할 경우 FTP 서버로 전환해야 합니다.