Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
os.system( "command --param=1 >> outfile.txt ")
|
|||
|---|---|---|---|
|
#18+
1. Как я понимаю, os.system() запускает системный "шелл", скармливая ему переданную строку. Например, системой может быть linux, а системным шеллом может быть zsh. Благодаря запуску шелла, распознаётся ">>" и создаётся файл. Верно? 2. Захотелось запустить процесс с параметрами, получив обратно в питон выведенные процессом в консоль строки. Способы перехватить вывод консольного приложения в питоне освящены тут, например: http://stackoverflow.com/questions/4760215/running-shell-command-from-python-and-capturing-the-output При этом не запускается никакой шелл, а используется "прямой" запуск приложения с передачей массива аргументов. Соответственно, никакой там ">>" работать уже не будет. Можно написать универсальную функцию, которая делает split() над строкой "command --param 2", и передаёт получившийся список куда-нибудь сюда . Но тогда при желании завернуть, скажем, многомегабайтный вывод программы в файл, придётся реализовывать какую-то свою записывалку в файл на уровне питона. Как её сделать так, чтобы запись шла СРАЗУ в файл (мелкими кусочками, типа по 1 МБ), а не по схеме "дождался всех строк, открыл файл, записал, закрыл"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2013, 16:45 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38235362&tid=1463880]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 371ms |

| 0 / 0 |
