我需要从一个有子目录的远程目录中复制一些文件。我正在使用lftp来完成这项工作,但里面的shell命令不起作用。有解决办法吗?请参阅下面的代码。任何帮助都非常感谢!
lftp -u $USER,$PASS sftp://$HOST <<EOF 2>&1
#find file file_name with absolutepath from REMOTE_DIR which lies in any of its subdirectories
filefound=`find "${REMOTE_DIR}"`-name "{$file_name}"`
#Get the absolutepath for subdirectory where the file resides
dir_loc=`dirname "${filefound}"`
lcd ${LOCAL_DIR}
cd ${dir_loc}
get ${file_name}
bye
EOF
我得到的错误是:filefound:找不到命令dir_loc:找不到命令
这是一个概念上的误解。
不能使用SFTP客户端运行shell命令。要运行shell命令,请使用SSH客户端。