标题: [文本处理] 用批处理修改server.xml中的路径文件改为其他路径怎么写(红色部份) [打印本页]
作者: xsenlin 时间: 2019-5-17 12:45 标题: 用批处理修改server.xml中的路径文件改为其他路径怎么写(红色部份)
<?xml version='1.0' encoding='utf-8'?>
<Server port="8008" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JasperListener" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="8019" protocol="HTTP/1.1"
connectionTimeout="20000"
maxKeepAliveRequests="20"
keepAliveTimeout="15000"
redirectPort="8447"/>
<Connector port="8007" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase=""
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="D:\oademo\swoa2017_show_jzb\site"
reloadable="true" crossContext="true">
</Context>
</Host>
</Engine>
</Service>
</Server>
作者: Batcher 时间: 2019-5-17 13:14
因为涉及文件编码问题,请把这个xml文件压缩一下传上来我试试
作者: zaqmlp 时间: 2019-5-17 14:10
- @echo off
- set info=互助互利,支付宝扫码头像,感谢赞助
- rem 有问题,可加QQ956535081及时沟通
- title %info%
- cd /d "%~dp0"
- powershell -NoProfile -ExecutionPolicy bypass ^
- $Utf8NoBomEncoding=New-Object System.Text.UTF8Encoding $False;^
- dir^|?{($_ -is [System.IO.FileInfo]) -and ($_.Name -eq 'server.xml')}^|%%{^
- write-host $_.FullName;^
- $text=[IO.File]::ReadAllText($_.FullName, $Utf8NoBomEncoding);^
- $text=$text -replace '(?^<=^<Context path=.+? docBase=\"")[^^\""]*','E:\123\test';^
- [IO.File]::WriteAllText($_.FullName, $text, $Utf8NoBomEncoding);^
- };^
- write-host '%info%' -ForegroundColor green;
- pause
复制代码
作者: xsenlin 时间: 2019-5-17 14:23 标题: TOMCAT中SERVER.XML 帮忙写个命令启动附件中
项目A
项目B
项目C
使用公共TOMCAT启动环境
如启运功 项目A,需手动改动TOMCAT 中server.xml 文件需配置
<Context path="" docBase="D:\oademo\swoa2017_show_jzb\site"
reloadable="true" crossContext="true">
</Context>
中的docBase="项目A所在目录"
同理若要启动项目B,则docBase="项目B所在目录"
项目C,则docBase="项目C所在目录"
配置文件见附件
请高手帮忙写个批处理命令,分别放在项目A,B,C中,实现用公共的TOMCAT,通过批处理改路径配置,启动不同项目
作者: xsenlin 时间: 2019-5-17 14:24
项目A,项目B,项目C是三个位置不同的目录
作者: Batcher 时间: 2019-5-17 14:42
不建议每次都直接修改xml文件内容。建议准备3个不同的文件在需要的时候覆盖一下,例如:
server_A.xml
server_B.xml
server_C.xml
启动项目A.bat- @echo off
- copy /y "server_A.xml" "server.xml"
- REM 启动命令写在下面
复制代码
启动项目B.bat- @echo off
- copy /y "server_B.xml" "server.xml"
- REM 启动命令写在下面
复制代码
启动项目C.bat- @echo off
- copy /y "server_C.xml" "server.xml"
- REM 启动命令写在下面
复制代码
作者: xsenlin 时间: 2019-5-17 15:01
@echo off
set site=%cd%\site
set info=路径设置成功,你可以开启项目了。
rem 有问题,可加QQ956535081及时沟通
title %site%
cd /d "C:\tools\tomcat7.0.50\conf"
powershell -NoProfile -ExecutionPolicy bypass ^
$Utf8NoBomEncoding=New-Object System.Text.UTF8Encoding $False;^
dir^|?{($_ -is [System.IO.FileInfo]) -and ($_.Name -eq 'server.xml')}^|%%{^
write-host $_.FullName;^
$text=[IO.File]::ReadAllText($_.FullName, $Utf8NoBomEncoding);^
$text=$text -replace '(?^<=^<Context path=.+? docBase=\"")[^^\""]*','%site%';^
[IO.File]::WriteAllText($_.FullName, $text, $Utf8NoBomEncoding);^
};^
write-host '%info%' -ForegroundColor green;
pause
作者: xsenlin 时间: 2019-5-17 15:02
回复 6# Batcher
也是一个不错的办法
作者: xsenlin 时间: 2019-5-17 15:05
谢谢Batcher和zaqmlp,这个网站太可怕了,回复的那么即时,不火都不行
作者: zaqmlp 时间: 2019-5-17 16:49
回复 9# xsenlin
赞助才是动力
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |