Тихое копирование файлов с помощью xcopy - Python для Windows 10 - PullRequest
0 голосов
/ 26 июня 2018

У меня быстрый вопрос, связанный с копированием файлов. При копировании файлов в сценарии я использую следующее:

os.system('echo f | xcopy /f /y "{source}" "{target}"'.format(source=source, target=target))

Я использую это, потому что это НАМНОГО быстрее, чем shutil.copyfile(source, target). Это прекрасно работает, но выводит эту уродливую строку приглашения в консоли для каждого скопированного файла (см. Изображение ниже).

enter image description here

И если я скомпилирую программу в exe-файл (используя cx_Freeze) без открытия окна CMD для графического интерфейса, оно быстро открывается и закрывает окно CMD при копировании каждого файла (как мерцание). Поэтому, если я копирую 30 файлов, окно CMD мигает, открывая и закрывая 30 раз.

Есть ли способ заставить это замолчать? Может быть, через флаг или что-то? Или, может быть, какой-то другой метод, который я мог бы использовать, столь же эффективен, как и xcopy без раздражающего приглашения и мерцающих окон?

Заранее спасибо.

1 Ответ

0 голосов
/ 26 июня 2018

Попробуйте:

import os
os.system('echo f | xcopy /y "{source}" "{target}" > nul'.format(source=filename, target=filename_txt))

Отлично работает на моей машине.

...