데비안 - bash 스크립트에서 TFTP 사용

데비안 - bash 스크립트에서 TFTP 사용

저는 실제로 RPiTC(Raspberry Pi 씬 클라이언트)를 사용하고 있습니다.

내 호스트 이름이 파일 이름과 같은지 확인하기 위해 스크립트를 만들었습니다. 이제 "내 호스트 이름이 내 파일 이름과 다르면 tftp 프로토콜을 사용하여 파일을 가져옵니다"라고 말하고 싶습니다.

내 tftp 서버는 Windows XP에 있습니다. 그래서 나는 이것을하고 싶습니다 :

Hostname is different from the file name
                |
                |------> Use tftp Protocol to take the file on my windows.

이것은 실제로 내 스크립트입니다.

do_start()
#Creating and checking my Hostname variable
ThisHost=$(hostname)
date=$(date)
echo "This is my hostname check:
echo $ThisHost

#This will find the file in the /home/rpitc folder and save it to a variable:
dest=$(find /home/rpitc/ -name "$ThisHost.ica")
echo "This is my dest check:"
echo $dest
findfile="${dest##*/}"
echo "This is my findfile check with extension:"
echo $findfile
echo "This is my findfile check WITHOUT extension:"
echo "${findfile%.*}"

#If check to see if my hostname $ThisHost matches the file $findfile:
if test "$ThisHost" = "${findfile%.*}"

then
    echo "Worked!"
    echo $ThisHost "is correct. Connected the" $date >> /home/rpitc/skelog
    exit 0
else
tftp=$(tftp 10.1.0.203)
GetIt=$("\Test\$ThisHost.ica")
    echo "My tftp test:"
    echo $tftp
    echo "My GetIt test:"
    echo $GetIt
    echo $ThisHost "is not correct, update of the file at" $date >> /home/rpitc/skelog
    exit 0
fi

따라서 스크립트의 이 부분에 대한 아이디어가 필요합니다.

else
tftp=$(tftp 10.1.0.203)
GetIt=$("\Test\$ThisHost.ica")
    echo "My tftp test:"
    echo $tftp
    echo "My GetIt test:"
    echo $GetIt
    echo $ThisHost "is not correct, update of the file at" $date >> /home/rpitc/skelog
    exit 0
fi

내 Bash 스크립트에서 tftp 프로토콜을 사용하는 방법을 모르겠습니다...

답변1

사용 here documents.

tftp 10.1.0.203 << fin
   get /test/${ThisHost}.ica
   quit
fin

/test/${ThisHost}.ica이것은 TFTP 서버 에서 와야 합니다 .

관련 정보