我实际上正在使用 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 服务器。