Я преподавал сам python в течение последних нескольких месяцев и, наконец, начинаю делать полезные вещи.Использование python для выдачи командной строки
То, что я пытаюсь в конечном счете сделать, это иметь скрипт python, который действует как очередь. То есть, я хотел бы иметь папку с кучей входных файлов, которую использует другая программа для выполнения вычислений (я физик-теоретик и выполняю много вычислительных заданий в день).
Способ, которым я должен сделать это сейчас, - поместить все входные файлы в поле с программным обеспечением. Затем мне нужно преобразовать входные файлы dos в unix (dos2unix), после этого я должен скопировать новый входной файл в файл с именем «INPUT». Наконец, я запускаю команду, которая запускает работу.
Все эти задачи обрабатываются в командной строке. Мой вопрос заключается в том, как связать мою программу с командной строкой? Затем, как я могу контролировать процесс (который я обычно делаю через использование процессора и команду TOP), а python запускает следующую работу, как только закончится последнее задание.
Извините за бессвязное отношение, я просто не знаю, как управлять командной строкой из сценария, а затем автоматически «наблюдать» за работой.
Благодаря
Я думаю, что модуль [subprocess] (http://docs.python.org/2/library/subprocess.html) - это то, что вы хотите. Это хороший вопрос, я дам вам это, но здесь много [дубликатов] (http://stackoverflow.com/q/89228/645270) здесь, на SO. – keyser
То, что вы на самом деле запрашиваете для управления командной строкой из сценария, сложно. Но когда командная строка, которую вы пытаетесь контролировать (в этом случае, оболочка) ничего не делает, вы не можете сделать более легко в Python (в данном случае с 'subprocess'), вам не нужно управляйте подсказкой. – abarnert