У меня есть требование, где мне нужно добавить новую запись для создания настраиваемой вершины в файле context_file приложения ebs, установленного в Oracle Linux 6. Файл context_file представляет собой файл XML. Нам нужно найти строку, а затем нам нужно добавить новую запись сразу после искомой строки.
- Поиск строки
AU_TOP>
в файле. Вставить строку в новую строку сразу после
AU_TOP>
<TEST_TOP oa_var="s_testtop" oa_type="PROD_TOP" oa_enabled="FALSE">/u01/oracle/oracle/apps/apps_st/appl/test/12.0.0</TEST_TOP>
- Сохраните файл.
Как это можно сделать с помощью сценария оболочки?
1
С большим трудом, если вы не включите пример ввода и вывода. И даже тогда синтаксический анализ XML с использованием сценариев оболочки похож на выполнение операции на мозге с помощью пластиковой чайной ложки.
—
Джейсонвриан
sed '/AU_TOP>/a /u01/oracle/oracle/apps/apps_st/appl/test/12.0.0'
?
Спасибо за ваш комментарий Джейсон. Я запустил команду, вставил строку, но как сохранить файл с изменениями?
—
user3436389
Например, мой xml-файл содержит следующую запись: <AU_TOP oa_var = "s_autop" oa_type = "PROD_TOP" oa_enabled = "FALSE"> / u01 / oracle / VIS / apps / apps_st / appl / au / 12.0.0 </ AU_TOP> < FND_TOP oa_var = "s_fndtop" oa_type = "PROD_TOP" oa_enabled = "TRUE"> / u01 / oracle / VIS / apps / apps_st / appl / fnd / 12.0.0 </ FND_TOP>
—
user3436389
Когда я дал следующую команду sed '/ AU_TOP> / a /u01/oracle/oracle/apps/apps_st/appl/test/12.0.0' text.txt, он вставил новую строку в вывод, но как сохранить новую вставленную строку в файле?
—
user3436389