将sed输出转换为sed输入?

时间:2019-05-29 17:57:33

标签: sed rhel7

我正在使用mod_jk创建两个Tomcat实例集群。 实例需要彼此通信,因此它们每个都需要知道对方的私有IP地址。地址需要添加到workers.properties文件中,也需要添加到server.xml文件中。我正在尝试使它自动化。

我创建了一个ec2 userdata脚本,该脚本使用堆栈中的输出将IP地址写入文本文件,如下所示:

10.0.75.75
10.0.75.142

(最上面的是“ tomcatnode1ip”,最下面的是“ tomcatnode2ip”。)

我可以跑步

sed '1!d' /home/ec2-user/scripts/properties/host.properties"

并打印host.properties的第1行,这是一个IP地址,我也可以将其输出到另一个txt文件。

我想做的是用两台服务器的IP地址覆盖workers.propertiesserver.xml中的变量。

这是通过

完成的
sed -i 's/tomcatnode1ip/tomcat1/g' /usr/share/tomcat/conf/server.xml

sed -i 's/tomcatnode1ip/tomcat1/g' /etc/httpd-2.4.39/modules/tomcat-connectors-1.2.46-src/conf/workers.properties

使用变量tomcat1tomcat2

所以基本上我有两个有效的sed脚本,而我想要的是其中一个:

  • 提供第二个脚本的第一个脚本的输出,或者
  • 嵌套脚本,以便将IP地址直接发送到变量

这两种可能吗?

0 个答案:

没有答案