Вызов сложной команды find из Python с использованием подпроцесса

Попробуйте это:

paste <(sar -r) <(sar -u) <(sar -q) <(sar -S) > sar.out

Пример вывода:

12:00:01 AM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit   12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle 12:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
12:10:01 AM   1737724   6311336     78.41     22036     85856   5583532     45.60   12:10:01 AM     all      3.92      0.00      8.85      0.01      0.00     87.22 12:10:01 AM         2       872      1.00      1.00      1.00
12:20:01 AM   1737228   6311832     78.42     22484     85860   5582312     45.59   12:20:01 AM     all      3.93      0.00      8.83      0.01      0.00     87.23 12:20:01 AM         2       871      1.00      1.01      1.00
12:30:01 AM   1736764   6312296     78.42     22956     85852   5582192     45.59   12:30:01 AM     all      3.96      0.00      8.79      0.01      0.00     87.24 12:30:01 AM         2       871      1.00      1.00      1.00
12:40:01 AM   1735636   6313424     78.44     23420     85868   5582264     45.59   12:40:01 AM     all      3.92      0.00      8.85      0.01      0.00     87.22 12:40:01 AM         2       871      1.00      1.00      1.00
12:50:01 AM   1734644   6314416     78.45     23884     85872   5582248     45.59   12:50:01 AM     all      3.90      0.00      8.86      0.01      0.00     87.22 12:50:01 AM         2       871      1.00      1.00      1.00
01:00:01 AM   1733992   6315068     78.46     24356     85876   5582252     45.59   01:00:01 AM     all      3.95      0.00      8.79      0.01      0.00     87.24 01:00:01 AM         2       871      1.00      1.00      1.00
01:10:01 AM   1731508   6317552     78.49     24836     85892   5583444     45.60   01:10:01 AM     all      3.95      0.00      8.80      0.01      0.00     87.24 01:10:01 AM         2       872      1.00      1.00      1.00
01:20:01 AM   1732028   6317032     78.48     25304     85880   5582144     45.59   01:20:01 AM     all      3.95      0.00      8.80      0.01      0.00     87.24 01:20:01 AM         2       871      1.00      1.00      1.00
01:30:01 AM   1730776   6318284     78.50     25752     85888   5582324     45.59   01:30:01 AM     all      3.95      0.00      8.79      0.01      0.00     87.25 01:30:01 AM         2       871      1.00      1.00      1.00
01:40:01 AM   1729152   6319908     78.52     26224     85892   5582404     45.60   01:40:01 AM     all      3.95      0.00      8.79      0.01      0.00     87.25 01:40:01 AM         2       871      1.00      1.00      1.00

Примечание. :В окончательных выходных данных будут дублироваться столбцы времени.

0
26.07.2020, 13:28
1 ответ

Функция subprocess.call()возвращает код возврата(ноль означает успех, ненулевое значение означает, что произошла ошибка ).

Если вы хотите получить вывод команды, используйте функцию subprocess.check _output (...).

PS :Вы не думали написать все это на Python? Стандартный модуль pathlib отлично подходит для этого.

0
18.03.2021, 23:17

Теги

Похожие вопросы