9

无论如何使用DOS命令/其他命令行工具(通过在命令中指定用户名和密码)将文件从Windows机器复制到远程Linux机器。我通常使用 WinSCP 执行此操作,并想编写一个脚本 (BAT) 来自动执行此操作。

4

5 回答 5

7

您可以使用PuTTY的命令行版本pscp.exe

于 2011-05-28T14:58:29.433 回答
6

上传文件的WinSCP 脚本命令行如下:

winscp.com /command "open sftp://username@example.com/" "put d:\www\index.html" "exit"

请参阅WinSCP 脚本编写指南


更简单的方法是使用生成传输代码功能让 WinSCP GUI 为传输生成脚本(甚至是完整的批处理文件)。

生成传输代码对话框

于 2014-06-13T08:04:19.863 回答
5

下载pscp.exe(PuTTY scp 伴侣)的副本。如果您在 Linux 服务器上设置了 SSH 密钥,您可以在 Windows 上使用 PuTTY 执行此操作,您可以设置从 Windows 到 Linux 机器的无密码复制。

于 2011-05-28T14:59:23.313 回答
1

安装 cygwin,你可以像在 linux 上一样使用 scp、ssh 等。此外,您可以使用普通的 bash 脚本来代替糟糕的 bat 文件。

于 2011-05-28T14:58:47.370 回答
0

如果有人希望在 2022 年做到这一点,那么 Windows 10 现在带有 scp。你可以做

scp path/localfile.txt remote-user@host:/home/path

或目录的递归版本

scp -r localfolder remote-user@host:/home/path

当然,使用 scp 如果您有大量文件,您会遇到问题。它复制所有内容,而不是仅复制更改/新文件。

然后你需要一个像 rsync 这样的工具,它可以通过 WSL(windows 子系统 linux)获得。

rsync -r localfolder remote-user@host:/home/path

(我个人犹豫是否为工作安装新工具,因此我希望坚持现有的工具)

于 2022-02-11T23:20:44.547 回答