Способы хранения данных для API командной строки

Я разрабатываю API в среде Unix для виртуальных машин. Я должен хранить некоторую информацию в таблице о виртуальных машинах.

В настоящее время я использую словарь python объектов виртуальной машины и сохраняю их в pickle.

Я хотел бы узнать о других лучших способах (если они есть) для хранения данных в API-интерфейсах командной строки. Любое предложение было бы полезно.

  • Использовать вкладки для отступов в режиме Python
  • Запуск облачной печати Google при загрузке
  • Построить xpra в локальном каталоге без привилегий root
  • Ошибка при создании виртуальной среды с помощью venv
  • Что такое эквивалент python для grep -v?
  • Выравнивание шаблона и удаление всей строки
  • Использование разных версий Python
  • связывание проблем при установке модуля python и зависимостей как не-root
  • One Solution collect form web for “Способы хранения данных для API командной строки”

    Для приложения, используемого другими, вы, вероятно, не должны использовать рассол, так как он не экономит на загрузке рассола из ненадежных источников (в качестве альтернативы вам нужно будет сделать 100% уверенным, что маринованные данные не могут быть изменены на диске между записью и чтением).

    Если данные когда-либо нуждаются в модификации пользователями, вы должны взглянуть на их запись с помощью YAML . Реализация Python доступна через PyYAML , но излучатель с более читаемым выходом будет пиамлом .

    Альтернативами являются JSON и большая работа XML.

    Все это требует, чтобы вы выполняли перевод на внутренние типы и из них в типы, поддерживаемые форматом хранения (словари / карты, списки, примитивные типы (ints, string, boolean)).

    YAML также поддерживает определенные пользователем типы с теми же проблемами безопасности, что и маринованные данные Python, но по крайней мере позволяет некоторую безопасную загрузку, то, что рассол не поддерживает. YAML через явные типы пользователей имеет меньше проблем с загрузкой данных после изменения исходной компоновки (переименование модулей, перемещение классов), как вы можете испытать с pickle.

    Interesting Posts

    Невозможно настроить яркость с помощью клавиши Fn

    Lemonbar Как установить шрифт

    Получить индекс массива

    Проверка бинарных файлов команд перед выполнением

    Как настроить раскладку клавиатур, подключенных позже?

    Как установить ls -lh со временем и длинным форматом даты в порядке убывания в .bashrc

    Можно ли получить конкретную информацию о сжатии файла?

    Список доступных методов шифрования для LUKS

    Xmonad: некоторые приложения не запускаются в рабочей области, которые я определил в config

    Как передать переменную в параллельный скрипт из текстового файла по строкам

    Ограничить пользователя unix от установки переменных среды во время активного сеанса

    Как найти файл, в котором определена функция bash?

    Увеличение ограничения размера для / var / cache / apt / archives

    В чем разница между поиском. и найти . -Распечатать

    Извлечь имя группы из `id` и сохранить ее в переменной

    Linux и Unix - лучшая ОС в мире.