代码之家  ›  专栏  ›  技术社区  ›  Joshua Averbuch

使用WinSCP从SFTP服务器下载文本文件时跳过重复行

  •  1
  • Joshua Averbuch  · 技术社区  · 7 年前

    是否有命令要求WinSCP批处理文件仅将远程文件中的非重复值附加到本地文件?

    这是我的批处理命令:

    @echo off
    
    "C:\Program Files (x86)\WinSCP\WinSCP.com" ^
      /log="C:\Users\U37615\Documents\POCLOSEBATCHLOG\WinSCP.log" /ini=nul ^
      /command ^
        "open xxxxxx -hostkey=""ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx....""" ^
        "get -append -delete xxxxxx"" ""xxxxxxx""" ^
        "exit"
    
    set WINSCP_RESULT=%ERRORLEVEL%
    if %WINSCP_RESULT% equ 0 (
      echo Success
    ) else (
      echo Error
    )
    
    pause
    exit /b %WINSCP_RESULT%
    

    我在远程服务器上有一个文本文件,我想将其附加到本地文件,但我只想附加本地列表中尚未包含的项目。有没有关于实现这一目标的命令或解决方法的想法?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Martin Prikryl    7 年前

    绝对不是。这是一个定制需求,您无法合理地期望任何SFTP客户机支持它。


    下载远程文件(否 -append )到临时本地文件( temp.txt ).

    然后做如下操作:

    powershell -Command "type local.txt, temp.txt | sort -unique > combined.txt"
    

    一些参考资料: