Круглая скобка вокруг значения с линзой Augeas?

Если Вы уже не используете Cygwin, это может быть слишком окольным, но:

  1. Cygwin (и установка, мятная для хорошего терминала)
  2. Установите zsh как свою оболочку
  3. Установка openssh

Эта установка даст Вам завершение хоста ssh, так, чтобы Вы могли 'ssh h [ВКЛАДКА]' и получать все мои хосты, которые начинаются с 'h', как найдено в known_hosts файле (файл, который регистрирует все хосты, в которые Вы вошли).

0
задан 3 January 2014 в 19:58
1 ответ

Первый вопрос, который вам нужно задать, - какое дерево вы хотите создать из этой строки. Как вы ожидаете, что Augeas проанализирует script_id (100197) .

Предполагая, что вы хотите проанализировать его, например:

{ "script_id" = "100197" }

, вы можете проанализировать это с помощью следующего кода:

let script_id =
     let oparen = Util.del_str "("
  in let cparen = Util.del_str ")"
  in [ key "script_id"
     . oparen . store Rx.integer . cparen
     . Util.eol ]

Вы можете добавить unit test, чтобы убедиться, что он работает:

test script_id get "script_id(100197)\n" = ?

и запуск augparse в файле:

$ augparse openvas.aug 
Test result: openvas.aug:10.0-.44:
  { "script_id" = "100197" }

Обратите внимание, что Augeas поддерживает только базовые регулярные выражения POSIX, поэтому \ d не распознается.

2
ответ дан 4 December 2019 в 14:04

Теги

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