Я выполняю некоторую команду в эмуляторе SDN. Команда:
$ py ap1.params['frequency']
Это дает мне единственное значение вывод (плавающий). Как я могу записать маленький сценарий Python или использование единственной команды, чтобы выполнить вышеупомянутую команду после каждых 2 секунд и добавить каждый вывод к файлу CSV.
Отказ от ответственности: Я не знаю вещь о Python, я просто комбинирую то, что сказано в ниже данных источников. Я не могу протестировать его и существует изменение, что это ужасно неправильно.
Запись некоторое время циклично выполняется со сном, управляют, чтобы регулярно называл Вашу команду: источник
import time; while True: ap1.params['frequency']; time.sleep(2)
Это не будет на самом деле называть команду каждые две секунды, а скорее ожидать две секунды между каждым выполнением – Вы могли бы хотеть настроить время сна.
Выполните цикл и перенаправьте вывод в файл, добавляющий его: источник
py 'import time; while True: ap1.params['frequency']; time.sleep(2)' >> output.csv
Существуют другие способы перенаправить вывод, конечно, сам Python также полностью способен к выполнению, это – видит источник для альтернативных подходов.
Вы можете (вид неправильных) используют watch
команда:
watch -n 2 -p "( py ap1.params[\'frequency\'] >>output.csv )"
Вы не будете видеть много на экране, который часы покажут за исключением времени, изменяясь, потому что эффективная выходная мощность перенаправляется. Обратите внимание, что команда, данная часам включая перенаправление, должна быть сгруппирована в круглых скобках. Кроме того, с или без часов, вероятно, одинарные кавычки в команде ('frequency'
) должен быть оставлен с \, таким образом, они не разделяются оболочкой.
Посмотрите man watch
для большего количества информации.