无法通过 psftp 使用通配符上传所有文件

Ash*_*har 5 windows sftp putty file-upload psftp

我希望将C:\Users\myuser\Downloads\SFTP本地 Windows 文件夹中的所有文件上传到远程 SFTP 服务器myfolder目录。

我在 Windows 上运行 sftp 并实现上述目标时遇到多个问题。

以下是我的命令:

C:\putty\psftp.exe -b C:\putty\sftp_commands.txt -l myuser -pw mypass 10.8.44.86
Run Code Online (Sandbox Code Playgroud)

这是我的C:\putty\sftp_commands.txt文件:

mkdir myfolder
cd myfolder
lcd "C:\Users\myuser\Downloads\SFTP"
put "C:\Users\myuser\Downloads\SFTP\*.*"
Run Code Online (Sandbox Code Playgroud)

尽管该文件存在于我的本地 Windows 上,但我收到“无法打开”错误。

C:\Users\myuser\Downloads\SFTP\*.*当我更改为时,这有效C:\Users\myuser\Downloads\SFTP\file1.txt

C:\Users\myuser\Desktop>C:\putty\psftp.exe -b C:\putty\sftp_commands.txt -l myuser -pw mypass 10.8.44.86
Using username "myuser".
Pre-authentication banner message from server:
| EFT Server Enterprise 7.3.2.8
End of banner message from server
Keyboard-interactive authentication prompts from server:
End of keyboard-interactive prompts from server
Remote working directory is /
mkdir /myfolder: OK
Remote directory is now /myfolder
New local directory is C:\Users\myuser\Downloads\SFTP
local: unable to open C:\Users\myuser\Downloads\SFTP\*.*
Run Code Online (Sandbox Code Playgroud)

你能建议我的代码有什么问题吗?

Mar*_*ryl 8

put不支持通配符,您必须使用mput

lcd "C:\Users\myuser\Downloads\SFTP"
mput *.*
Run Code Online (Sandbox Code Playgroud)