Конечно, все это не имеет прямого отношения к Python (несмотря на то, что сценарии командной строки на языке Python иногда ошибочно называют инструментами оболочки). Но, поскольку функции system и popen из модуля os позволяют сценариям Python выполнять любые команды, понятные оболочке системы, мы можем использовать в своих сценариях любые имеющиеся в системе инструменты командной строки, независимо от того, написаны они на Python или нет. Например, ниже приводится некоторый программный код на языке Python, который выполняет две команды оболочки DOS, введенные выше в ответ на приглашение оболочки:
C:\…\PP4E\System> python
> >> import os
> >> os.system(‘dir /B’)
helloshell.py
more.py
more.pyc spam.txt __init__.py 0
> >> os.system(‘type helloshell.py’)
# a Python program
print(‘The Meaning of Life’)
>>> os.system(‘type hellshell.py’)
The system cannot find the file specified.
1
Нули, которые выводятся по окончании выполнения первых двух команд, являются значениями, возвращаемыми самой функцией system. Функцию system можно использовать для выполнения любой командной строки, которую допускается ввести в ответ на приглашение оболочки (здесь приглашением является C:\…\PP4E\System>). Выводимые командой данные обычно попадают в стандартный поток вывода сеанса Python или программы.
Использованная литература:
Марк Лутц — Программирование на Python, 4-е издание, I том, 2011