wiremann
Июнь 22, 2017 10:22:43
Здравстуйте, подскажите пж-та, необходимо перенаправить результат вывода утилиты ipconfig в файл.
Пытаюсь делать так:
import os
f= open(“D:\\ipconfig_tmp.txt”, “w”)
f.write(os.system('C:\Windows\System32\ipconfig.exe'))
Но в файл ничего не записывается. Что я делаю не так?
krok64
Июнь 22, 2017 10:32:52
import os
os.system('C:\Windows\System32\ipconfig.exe > outfile.txt')
wiremann
Июнь 22, 2017 11:21:29
krok64, к сожалению, с вашим способом также не получается (я так пробовал изначально), то же самое, в файл вывод утилиты не записывается, права на файл, в который пытаюсь записать, полные
krok64
Июнь 22, 2017 11:24:29
А если просто запустить cmd.exe и прямо там выполнить C:\Windows\System32\ipconfig.exe > куданадо.txt то так работает?
wiremann
Июнь 22, 2017 11:55:46
Да, если из cmd с перенаправлением в нужный файл, то так корректно отрабатывает и в файл информация записывается
Stright
Июнь 22, 2017 12:11:57
Попробуйте через
subprocess.
На русскомПример:
import subprocess
process = subprocess.run(['ls', '-la'], stdout=subprocess.PIPE, check=True)
with open(file_path, 'wb') as file:
file.write(process.stdout)
krok64
Июнь 22, 2017 12:53:21
wiremann
Да, если из cmd с перенаправлением в нужный файл, то так корректно отрабатывает и в файл информация записывается
а теперь скопируй строку запуска из cmd в os.system('…') возможно у тебя опечатка либо в пути к ipconfig либо в пути к файлу вывода.
wiremann
Июнь 22, 2017 14:05:13
Stright, спасибо вам большое! По вашему примеру заработало корректно