異なるフォルダーにファイルをアップロードするための WinSCP コマンドを含むバッチ ファイルを作成しました。ファイル名とフォルダー名に空白が含まれています。
これらのファイルとフォルダーを含むバッチ ファイルを実行すると、エラーが表示されます。空白スペースがない場合、アップロードは成功します。
以下は私が実行しているバッチ コマンドです。
cd \
cd C:\Program Files\WinSCP
winscp.com /command "option echo off" "option batch on" "option confirm off" "open sftp" "put C:\abc\EXCEL\RestaurantAutomation\RestaurantReport_2012120172514\x y Report_P10_0010050075.xls /abc/MG0047/System Generated/x y Report_P10_0010050075.xls" "exit"
発生したエラーは次のとおりです:
Cannot create remote file ' /Generated/x y Report_P10_0010050075.xls'.
The file path does not exist or is invalid.
Error Code:10
Request code:3
答え1
スペースを含む名前を再度二重引用符で囲みます。
winscp.com /command "option echo off" "option batch on" "option confirm off" "open sftp" "put ""C:\abc\EXCEL\RestaurantAutomation\RestaurantReport_2012120172514\x y Report_P10_0010050075.xls"" ""/abc/MG0047/System Generated/x y Report_P10_0010050075.xls""" "exit"
アップデート:コマンドを更新しました。
答え2
このように試してみてください。
winscp.com /command "option echo off" "option batch on" "option confirm off" "open sftp" "put C:\abc\EXCEL\RestaurantAutomation\RestaurantReport_2012120172514\""x y Report_P10_0010050075.xls"" /abc/MG0047/""System Generated""/""x y Report_P10_0010050075.xls""" "exit"
答え3
スペースをエスケープしてみましたか?
/abc/MG0047/System Generated/x\ y\ Report_P10_0010050075.xls
他の可能性としては、フォルダー自体を引用符で囲むことが考えられますが、すでにいくつかあるため、混乱を招く可能性があります。