我可以在 linux 之间传输文件。也可以使用cmd pscp命令从linux传输到windows或windows到linux。但系统要求输入密码。所以我尝试过winscp批处理命令来跳过密码。
现在我想每天像cronjob一样将文件从linux传输到windows共享文件夹。该动作将在linux系统中执行。因为客户端只给我 Windows 共享文件夹链接。
答案1
这桑巴项目创建了多个工具,可让您从 Linux 计算机访问 Windows 共享;自动上传文件的两个选项是:
将 Windows 共享挂载到某处(使用内核 CIFS 文件系统)。您可以使用
mount -t cifs -o credentials=/path/to/credfile,uid=some-local-uid //server/share /mnt/whatever
(有一些选项用于设置用户名/密码,或使用凭据文件,以及设置谁可以访问共享;请参阅mount.cifs
联机帮助页)。当然,像任何其他安装的文件系统一样,您可以将其放入/etc/fstab
.然后您可以使用例如 上传文件cp
。使用
smbclient
命令行程序,这与sftp
(或ftp
) 的想法类似。命令类似于:smbclient -A /path/to/credfile -c "put local-filename" //server/share
请注意,尤其是通过 Internet 发送时,许多配置中的 Windows 共享提供的加密和身份验证比 SSH 弱得多/不存在。