Попробуйте это:
sed -i '/AUTOINSTALL_VTK/ s/\<OFF\>/ON/' file
Я добавил границы слов \<
и \>
, чтобы предотвратить замену OFF
внутри какого-либо другого слова, например. OFFICIAL
.
Чтобы запустить несколько команд для соответствующей строки, вы можете использовать {... }
.
Пример переключения ON
иOFF
:
sed -i '/AUTOINSTALL_VTK/{s/\<OFF\>/ON/n;t;s/\<ON\>/OFF/;}' file
Описанная последовательность передачи работала. Меня вводит в заблуждение то, что часть процесса посредничества вызовов не отображалась в журнале (. У меня настроен провод для отладки ), как это было до добавления фильтра.
Я также обнаружил, что когда я устанавливаю тип token_generation_time
на LONG
, операция fn:number(get-property('SYSTEM_TIME')) - fn:number(get-property('token_generation_time'))
приводит к результату NaN
, который я не понимаю.
<log level="custom">
<property expression="fn:number(get-property('SYSTEM_TIME')) - fn:number(get-property('token_generation_time'))" name="FilterV"/>
</log>
В журнале:
[2020-10-07 15:57:09,539] INFO - LogMediator FilterV = NaN
Моя проблема решена. Спасибо всем, кто прочитал этот пост за его желание помочь мне.
Но мне все еще интересно, почему результат NaN выше. Я также хотел бы получить от вас несколько советов по улучшению последовательности. Спасибо