从 WinSCP 命令行开始同步时排除一个文件扩展名

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

我在处理项目时一直使用 WinSCP 来保持我的本地主机和服务器同步,并且它总是按预期工作。

这是我一直使用的.lnk文件

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

现在我必须排除 .txt 文件,因为 WinSCP 导致我主机上的日志被删除(它们在服务器上更新但在本地主机上保持空白,所以当我打开文件时同步功能会删除它们) .

阅读文档我找到了这个解决方案:

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

问题是,现在每次我打开 link 我都会收到这条消息:

以前从未发生过:

我做错了什么?

没有 -filemask 命令行开关。

你必须使用 raw transfer settings IncludeFileMask:

/rawtransfersettings IncludeFileMask="|*.txt"

请注意,您使用的是 // (swo slashes)// 之后没有开关工作。所以要么把 /rawtransfersettings 放在 // 之前。或删除 //,除非确实需要。如果您的路径看起来像一个开关 (/path),则需要它,但当它显然是一个路径时则不需要 (/my/server/path)。