bash FTP脚本中的本地文件存在条件

时间:2015-06-01 21:43:23

标签: bash scripting ftp local

我想从服务器获取文件,条件是本地目录中不存在该文件。在最终的脚本中会有很多文件,但这里只是一个例子。

我正在尝试这个:

#!/bin/bash
HOST='a.b.c.d'
USER='anonymous'
PASSWD='pass'

ftp -n -v $HOST << EOT
user $USER $PASSWD
prompt
binary

!test -f filename && get /remotedir/remotefilename filename

bye
EOT

我收到此错误:+bash: get: command not found,大概是因为get是在本地而不是在FTP中调用的,但我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:2)

试试这个:

替换

!test -f filename && get /remotedir/remotefilename filename

通过

$(test -f filename && echo get /remotedir/remotefilename filename)