Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 17, 2009 21:42:38

drm
От:
Зарегистрирован: 2008-12-25
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

Задача такая - есть батник, в котором есть несколько утилит командной строки в которых в качестве параметров используется имя файла. Задача следующая - обхожу все файлы с помощью os.walk - как передать имена файлов в батник и запустить его из python.



Офлайн

#2 Авг. 17, 2009 22:20:59

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

Не вижу вопроса.

Офлайн

#3 Авг. 17, 2009 22:27:02

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

Можно использовать:
os.system
os.execl
os.execlp
os.spawnv

В зависимости от нужд.



Офлайн

#4 Авг. 17, 2009 22:50:39

drm
От:
Зарегистрирован: 2008-12-25
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

Простейший пример - имеем переменную v='ABC'. И имеем bat-файл, в котором нужно напечатать в консоль значение v, то есть что то типа ECHO %%v. Как мне из Python подставить значение в bat и запустить его? То есть в данном сдучае в консоли должна выполниться клманда ECHO ABC.



Отредактировано (Авг. 17, 2009 22:51:19)

Офлайн

#5 Авг. 17, 2009 23:48:38

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

v="abc"
os.system("echo abc")
os.system("echo " + v")
os.system("file.bat")
или вот так по индусски :)
os.system(open("file.bat").read())



Отредактировано (Авг. 17, 2009 23:49:38)

Офлайн

#6 Авг. 18, 2009 09:07:51

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

pasaranax
или вот так по индусски :)
Код:
os.system(open(“file.bat”).read())
:)
v='ABC'
os.system(open("file.bat").read().replace('%%%%v',v))



Офлайн

#7 Авг. 20, 2009 11:22:15

QZip
От:
Зарегистрирован: 2007-11-09
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача параметра в bat-файл

можно так:
заменить %%v в батнике на %1
затем передать батнику v виде аргумента:

import os
v="abc"
os.system("file.bat "+v)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version