BAT脚本:从Windows复制文件到远程Linux系统

9
有没有办法通过DOS命令/其他命令行工具(通过在命令中指定用户名和密码)将文件从Windows机器复制到远程Linux机器。我通常使用WinSCP进行此操作,并希望编写一个脚本(BAT)来自动化此过程。

3
WinSCP可以从脚本中运行。 - Mat
5个回答

7

您可以使用命令行版本的PuTTY, 其中包含了pscp.exe


3
严格来说,pscp.exe并不是PuTTY命令行版本,它只是安全拷贝组件。而plink.exe是PuTTY的命令行伴侣,尽管它是为远程命令设计的,但不需要启动一个shell。 - Michael Berkowski

6

1
谢谢您关于生成传输函数的更新。这实际上是我计划开始的地方,但不确定它是否存在 :) - Developer Marius Žilėnas

5

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


1
安装cygwin,你就可以像在Linux上一样使用scp、ssh等命令。此外,你还可以使用普通的bash脚本,而不是糟糕的bat文件。

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

(我个人不喜欢安装新工具来完成一项工作,因此我希望坚持使用已经可用的方法)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接