Извините, я вроде как новичок в этом:
В основном я скачал этот пакет, который имеет дело с текстовыми файлами, которые запускаются из терминала, но нужная мне команда принимает два аргумента. Мне также нужно делать это много раз (5000+).
Мне нужно получить эти аргументы с помощью скрипта Python, и я могу зацикливать его много раз с помощью Python. Так мог ли я получить аргументы в скрипте python, запустить строку командной строки и зациклить ее? Как?
Спасибо!
Вот рыба...
import popen2, sys
def loopy_subprocess(arga, argb, iterations, command = 'echo'):
for i in range(int(iterations)):
p = popen2.Popen4((command, arga, argb))
p.wait()
print(p.fromchild.readlines())
if __name__ == '__main__':
try:
arga = sys.argv[1]
argb = sys.argv[2]
iterations = sys.argv[3]
except:
print("You didn't supply enough arguments\n"+\
"Usage: python script.py arga argb iterations\n"+\
"Warning - unsafe. No input validation and doesn't account for spaces in arguments\n"+\
"Optionally supply the command to be run as a final argument\n")
quit()
try:
command = sys.argv[4]
loopy_subprocess(arga, argb, iterations, command)
except:
loopy_subprocess(arga, argb, iterations)
Вероятно, самый легкий способ сделать это должно получить доступ к параметрам командной строки из Python и также сделать цикл в рамках Python. Вы могли изучить sys.argv
от sys
модуль для доступа к параметрам командной строки. Если я вспоминаю правильно, что это должно позволить Вам делать что-то как:
python scriptname.py argument1 argument2
и затем получите доступ к аргументам в рамках использования scriptname.py
import sys
arg_1 = sys.argv[1]
arg_2 = sys.argv[2]
Вы могли также разработать целую стопку команд легко с инструментом как утес (Платформа Формулировки Интерфейса командной строки).