2010-10-21 151 views
0

我有以下.BAT代码转换在.SH代码转换.bat文件到sh文件

echo Setting Bonita Environment variable 
set "JAVA_OPTS=%JAVA_OPTS% -Djava.naming.factory.initial=org.jnp.interfaces.NamingContextFactory" 
set "JAVA_OPTS=%JAVA_OPTS% -Djava.naming.provider.url=jnp://localhost:1099"  
set "LOG_OPTS= -Djava.util.logging.config.file=D:\jboss-5.0.0.CR2-jdk6\jboss-5.0.0.CR2\server\default\conf\logging.properties" 
set "SECURITY_OPTS= -Djava.security.auth.login.config=D:\jboss-5.0.0.CR2-jdk6\jboss-5.0.0.CR2\server\default\conf\jaas-standard.cfg" 
set JAVA_OPTS= %JAVA_OPTS% %LOG_OPTS% %SECURITY_OPTS% 
echo %JAVA_OPTS% 

请指引我这样做。谢谢。

回答

1
echo Setting Bonita Environment variable 
JAVA_OPTS="$JAVA_OPTS -Djava.naming.factory.initial=org.jnp.interfaces.NamingContextFactory" 
JAVA_OPTS="$JAVA_OPTS -Djava.naming.provider.url=jnp://localhost:1099" 
LOG_OPTS="-Djava.util.logging.config.file=D:\jboss-5.0.0.CR2-jdk6\jboss-5.0.0.CR2\server\default\conf\logging.properties" 
SECURITY_OPTS="-Djava.security.auth.login.config=D:\jboss-5.0.0.CR2-jdk6\jboss-5.0.0.CR2\server\default\conf\jaas-standard.cfg" 
JAVA_OPTS="${JAVA_OPTS}${LOG_OPTS}${SECURITY_OPTS}" 
echo "$JAVA_OPTS" 
0

这是一个相当简单的转换任务:

  • 形式%xyz%的所有变量应${xyz}更换。
  • 全部set陈述应该是export
  • 您的set "abc=xyz"类型的报表应该是export abc="xyz"(报价的不同位置)。
  • 路径当然应该反映Linux文件系统(没有驱动器,正斜杠,不同的位置)。
  • 如果你想使用那些变量一旦脚本完成,你需要source吧或者.吧,没有运行它。运行它会在子shell中创建这些变量,而不是你想要的shell。
+0

在这种情况下,没有必要'export',我猜 – abatishchev 2010-10-21 07:48:52

+0

如果不导出它们,它们不会提供给子壳。 – paxdiablo 2010-10-21 07:50:57