Debian -- bash スクリプトで TFTP を使用する

Debian -- 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サーバーから来る必要があります。

関連情報