Отредактируйте tomcat server.xml с помощью оболочки

Как я могу отредактировать файл server.xml сервера Tomcat с помощью оболочки? Я хочу вставить новый тег из текстового файла в server.xml под тегом <GlobalNamingResources>. Я нашел много сообщений о команде sed, полезно заменить значение другим, но в моем случае я хочу добавить тег, а не заменить его.


person Joe Kahla    schedule 07.05.2013    source источник


Ответы (3)


sed можно также использовать для вставки строк в файл. Эта команда добавляет тег foo после закрывающего тега GlobalNamingResources:

sed -i~ '/<\/GlobalNamingResources/a <foo></foo>' server.xml

параметры -i~ делают редактирование на месте, создавая файл резервной копии server.xml~.

person toro2k    schedule 07.05.2013
comment
Это то, что я ищу, большое спасибо, но не могли бы вы сказать мне, пожалуйста, что я должен изменить, чтобы сделать ‹foo› в <GlobalNamingResources>, а не после ? - person Joe Kahla; 07.05.2013
comment
@JoeKahla удаление символов \/ работает только в том случае, если открытый тег <GlobalNamingResources> стоит на строке, отличной от соответствующего закрывающего тега. Если они находятся в одной строке, вы не можете использовать sed. - person toro2k; 07.05.2013

Вы ищете названия команд редактора?

  • пико
  • нано
  • vi
  • емакс

или если у вас есть оболочка, подключенная к пользовательскому интерфейсу

  • гэдит
  • Кейт

и я уверен, что есть и другие.

person Olaf Kock    schedule 07.05.2013
comment
Спасибо за помощь, но я не хочу редактировать файл вручную, я хочу сделать скрипт, который вставит содержимое моего файла a.txt в файл server.xml tomcat под тегом <GlobalNamingResources>. - person Joe Kahla; 07.05.2013

Просто используйте команду «sed» или «>>» unix.

Здесь это уже рассматривалось: Как я могу добавить строку в файл в сценарии оболочки?

person Spawnrider    schedule 07.05.2013