2014-11-21 130 views
1

我从Tomcat-users.xml中下面的代码添加文本(文件包含标签)

<tomcat-users> 
    <!-- 
     NOTE: By default, no user is included in the "manager-gui" role required 
     to operate the "/manager/html" web application. If you wish to use this app, 
     you must define such a user - the username and password are arbitrary. 
    --> 
    <!-- 
     NOTE: The sample user and role entries below are wrapped in a comment 
     and thus are ignored when reading this file. Do not forget to remove 
     <!.. ..> that surrounds them. 
    --> 
    <!-- 
     <role rolename="tomcat"/> 
     <role rolename="role1"/> 
     <user username="tomcat" password="tomcat" roles="tomcat"/> 
     <user username="both" password="tomcat" roles="tomcat,role1"/> 
     <user username="role1" password="tomcat" roles="role1"/> 
    --> 
</tomcat-users> 

我想补充以下从shell脚本的新角色和新用户到它。

<role rolename="manager-gui"/> 
<user username="t" password="t" roles="manager-gui”/> 

如何在shell脚本中执行此操作?

回答

1

如果您尝试使用正则表达式处理xml/html文件,您应该知道风险。

这里是肮脏的,快捷的方式与GNU的sed:

sed -ir '/<tomcat-users>/s#.*#&\n<role rolename=".../>\n<user....#' tomcat-users.xml