我在下面提供了我自己的答案。
我们有许多使用 SFTP 可以正常工作的 bash 脚本,我想要做的是简单地将文件夹的 ls 或 dir 重定向到我们 SFTP 服务器上的文件。
我们可以将其作为cron 作业运行,也可以手动运行。我可以查看来自远程服务器的文件列表,但我想以文本文件的形式生成从远程服务器到本地服务器的文件列表。 .
到目前为止,这是我对 bash 脚本所拥有的内容。下面列出的第四个回声是有问题的行。
#!/bin/bash
localpath=/home/localacct/somepath
remotelocation=/home/account/logs/archive
remotehost=' account@1.1.1.1'
echo > $localpath/list.sftp
echo "cd $remotelocation " >> $localpath/list.sftp
echo "dir *.* " >> $localpath/list.sftp
echo "dir *.* > $localpath/dirlist.txt " >> $localpath/list.sftp
echo "bye " >> $localpath/list.sftp
sftp -b $localpath/list.sftp $remotehost
exit
Run Code Online (Sandbox Code Playgroud)