You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

批处理文件调用WinSCP时出现‘unknown command ^’错误的解决办法

解决WinSCP批处理报错'unknown command ^'的方法

你的报错是因为脚本最后一行"exit"末尾多余的续行符^导致的——WinSCP会把这个^当作一条未知命令解析,从而抛出错误。

修正步骤:

  • 直接移除"exit"行末尾的^,续行符仅用于需要换行的命令之间,最后一条命令不需要添加续行符
  • 确认路径转义无误:原脚本中-hostkey=""*""和-privatekey=""C:\Location\To\Private.ppk"""的写法正确,通过双引号嵌套实现向WinSCP传递带双引号的参数

修正后的完整代码:

@echo off
"C:\Program Files (x86)\WinSCP\WinSCP.com" ^
/log="C:\temp\WinSCP.log" /ini=nul ^
/command ^
"open sftp://un:pw@sftp.site.com/ -hostkey=""*"" -privatekey=""C:\Location\To\Private.ppk""" ^
"cd /" ^
"lcd C:\temp\LatestFile" ^
"get -latest Filename*" ^
"exit"

如果问题仍存在,可查看C:\temp\WinSCP.log日志文件,里面会记录命令执行的详细过程,便于排查其他潜在问题。

内容的提问来源于stack exchange,提问作者Dustin Cook

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 20:12:19