Скопируйте файл с локального на удаленный рабочий стол в Python, используя подпроцесс - PullRequest
1 голос
/ 21 марта 2020

Я пытаюсь создать программу для моего проекта, в котором мне нужно было скопировать некоторые файлы с моего локального компьютера в каталог удаленного рабочего стола p c на рабочем столе. Это часть автоматизации подключения и копирования файлов на все удаленные компьютеры. Я использовал подпроцесс для подключения к удаленному рабочему столу. Поскольку я новичок в использовании команд подпроцесса или cmd, я не могу найти способ сделать это. Это код:

from pynput.keyboard import Key,Controller
import time
import subprocess
def process_exists(process_name):
    call = 'TASKLIST', '/FI', 'imagename eq %s' % process_name
    output = subprocess.check_output(call)
    last_line = output.decode("utf-8").strip().split('\r\n')[-1]
    return last_line.lower().startswith(process_name.lower())
#os.system('cmd /k "mstsc /v:192.168.0.107"')
#os.system('cmd /c "notepad"')
from subprocess import Popen
p = Popen('mstsc /v:192.168.0.107')
time.sleep(1)
keyboard = Controller()
# Password is given here
for i in range(10):
    if process_exists('mstsc.exe'):
        time.sleep(1)
        keyboard.type("**********")
        keyboard.press(Key.enter)
        time.sleep(0.12)
        break
time.sleep(3)

Здесь я использовал подпроцесс просто для подключения к этому удаленному P C. Я пытался

Popen(r'copy /Y "E:\test.jar" "\\192.168.0.107\c\"')

Но это не помогло. Хотя я не знал основы c этой линии. Ошибка, которую он показал, была:

FileNotFoundError: [WinError 2] The system cannot find the file specified

Этот код предназначен только для теста, поэтому я использовал только задержку по времени, не проверял, правильно ли он работал. Удаленный рабочий стол успешно запущен. Но не удалось запустить процесс копирования.

Извините за мой плохой Энгли sh. Заранее спасибо

...