任何人都可以帮助我会出现什么问题?登录名和密码来自 .netrc。, < 在 example.script 之前不起作用
#!/bin/bash
HOST='192.163.3.3'
FILE="a.txt"
while :; do
ftp -p -v -i $HOST << example.script >> a.log
grep -qF "Connected" a.log &&
grep -qF "File successfully transferred" a.log && break
done
exit 0
example.script 包含
put $FILE
quit
错误是:
./example.sh: line 15: syntax error: unexpected end of file
我sh -vx
在脚本上使用时得到了这个:
while :; do
ftp -p -v -i $HOST < example.script >> a.log
grep -qF "Connected" a.log &&
grep -qF "File successfully transferred" a.log && break
done
+ :
+ ftp -p -v -i 192.163.3.3
+ grep -qF Connected a.log
grep: a.log: No such file or directory
+ :
+ ftp -p -v -i 192.163.3.3
+ grep -qF Connected a.log
grep: a.log: No such file or directory
+ :
请注意,此代码修复了问题(使用<
而不是<<
输入重定向)。脚本文件以exaple.script
代替example.script
.