如何使用 WinSCP 或批处理脚本从多台 Linux 机器下载文件?

如何使用 WinSCP 或批处理脚本从多台 Linux 机器下载文件?

我需要从 40 台不同的 Linux 机器下载特定文件。如何使用单个脚本实现?我试过,WinSCP.com /script=script.txt 但限制是单个脚本只能创建一个会话。我不能提及多个打开的会话。

我需要一种可以逐一登录所有服务器并下载文件并放置到我的本地驱动器的技术。

答案1

您可以open在 WinSCP 脚本文件中使用多个命令。如果您的意思是要指定多个open命令,而不需要为每个服务器重复下载命令(get),则可以使用參數化腳本. 从 WinSCP 文章开始 上传至多个服务器/参数化脚本

open %1%
get /remote/path/file.txt
exit

在您的批处理文件中:

winscp.com /script=script.txt /ini=nul /parameter sftp://user1:[email protected]/
winscp.com /script=script.txt /ini=nul /parameter sftp://user2:[email protected]/
rem Etc...

为了进一步限制重复次数,您可以执行以下操作:

set DOWNLOAD_FROM=winscp.com /script=script.txt /ini=nul /parameter 
%DOWNLOAD_FROM% sftp://user1:[email protected]/
%DOWNLOAD_FROM% sftp://user2:[email protected]/
rem Etc...

上传类似:
自动将文件上传到多个 FTP 站点

相关内容