WinSCP 自动将本地子文件夹的文件直接同步到 root 的远程

WinSCP 自动将本地子文件夹的文件直接同步到 root 的远程

我在文件夹的自动同步中找不到从子文件夹复制文件的选项,而无需将完整的文件夹结构复制到远程位置的根目录中。

我是否遗漏了什么,或者是否有任何方法可以至少通过一些转变来实现这一目标?

例子

local/folder1/file1.wav
local/folder2/file2.wav
local/folder2/file3.wav
local/folder2/file4.wav
local/folder3/file5.wav

进入

root/file1.wav
root/file2.wav
root/file3.wav
root/file4.wav
root/file5.wav

答案1

WinSCP没有这样的界面。

我能看到的选项是:

  • 手动逐个同步文件夹。
  • 编写一个 Windows 批处理文件,其中包含每个文件夹的命令。
    请参阅 命令行选项
  • 编写 WinSCP 脚本。请参阅 脚本和任务自动化

答案2

有一个使用 WinSCP .NET 程序集的 PowerShell 脚本,它几乎可以完成您需要的操作:
https://winscp.net/eng/docs/library_example_moves_files_keeping_directory_structure#upload_powershell

将脚本复制到本地.ps1。根据您的需要进行调整。

  • 从您在 Stack Overflow 上的原始帖子中,我可以看到您已经遵循了以下说明: https://winscp.net/forum/viewtopic.php?t=27829#92162
  • 此外,我假设您不想删除源文件。因此,您需要$True从以下位置删除参数:
    $session.PutFiles($localFilePath, $remoteFilePath, $True)
    

然后,您可以将脚本作为扩展安装到 WinSCP GUI 中。转到选项 > 首选项 > 命令 > 添加 > 添加扩展

相关内容