Python 使用 Fabric 复制文件 - Windows 到 Debian

Python copy file with Fabric - Windows to Debian

我正在尝试使用 Python Fabric 将文件从 Windows 复制到 debian 系统。

来源:Windows 文件夹是 C:\Users\UserN\Downloads contains the file test_celsius.out

目的地:Debian 文件夹是 /mnt/Reado/RoTempValC

我可以使用 WinSCP 将其他文件从 SOURCE 移动到 DESTINATION。但是,我需要使用 Fabric 来移动这个特定文件。

我可以使用 Fabric 进入这个目录并列出其当前内容:

ls /mnt/Reado/RoTempValC

这是我尝试过的方法 - 在名为 move() 的 Fabric 任务中我有这个

run('mv C:\Users\UserN\Downloads\test_celsius.out /mnt/Reado/RoTempValC')

现在,这是输出:

.
.
.
.
[10.10..] Executing task 'move'
[10.10..] run: mv C:\Users\UserN\Downloads\test_celsius.out /mnt/Reado/RoTempValC
[10.10..] out: mv: rename C:/Users/UserN/Downloads/test_celsius.out to /mnt/Reado/RoTempValC/test_celsius.out: No such file or directory
[10.10..] out: 

Disconnecting from 10.10.. done.

Fatal error: run() received nonzero return code 1 while executing!

Requested: mv C:/Users/UserN/Downloads/test_celsius.out /mnt/Reado/RoTempValC
Executed: /bin/bash -l -c "mv C:/Users/UserN/Downloads/test_celsius.out /mnt/Reado/RoTempValC"

Aborting.

我不确定为什么要这样做。我可以使用上面的 ls 命令正确列出 Debian 中目录的内容。

有没有办法复制这个文件?

编辑:

附加信息:

  1. 我是运行上面的fab move命令来自Windows命令 提示.
  2. 我打开命令提示符并输入 cd Python27\SGTemp 因为这是 fabfile.py 所在的位置。
  3. 那我运行fab move.

编辑 2:

我用 /mnt/Reado/RoTempValC/ 替换了 /mnt/Reado/RoTempVal 但得到了与上面相同的输出。

尝试 fabric.operations.put(*args, **kwargs):

put('C:\Users\UserN\Downloads\test_celsius.out', '/mnt/Reado/RoTempValC')