synchronizationwinscp

Exclude one file extension when starting synchronization from WinSCP command-line


I've always used WinSCP to keep my localhost and the server syncronized while I'm working on a project and it has always worked as expected.

This is the .lnk file I've always used

"C:\Program Files (x86)\WinSCP\WinSCP.exe" "Typed" /defaults /keepuptodate // "C:\Xampp\htdocs\my\folder\path" /my/server/path

Now I have to exclude .txt files, because WinSCP causes the logs on my host to be deleted (they are updated on the server but remain blank on localhost, so the sync function deletes them when I open the file).

Reading the documentation I found this solution:

"C:\Program Files (x86)\WinSCP\WinSCP.exe" "Typed" /defaults /keepuptodate // "C:\Xampp\htdocs\my\folder\path" /my/server/path /parameter // "-filemask=|*.txt"

The problem is that now every time I open the link I get this message:

WinSCP error

It never happened before:

What am I doing wrong?


Solution

  • There's no -filemask command-line switch.

    You have to use raw transfer settings IncludeFileMask:

    /rawtransfersettings IncludeFileMask="|*.txt"
    

    Note that you use the // (two slashes). No switches work after //. So either put the /rawtransfersettings before the //. Or remove the //, unless it is really needed. It's needed if your path looks like a switch (/path), but not when it's clearly a path (/my/server/path).