将程序参数从 shell 脚本传递到 jar 时,转义字符不起作用

Bowen Peng

当我尝试将一些程序参数从 shell 脚本传递给 java 程序时,转义字符不起作用。
这是我尝试使用的代码和命令。
外壳脚本:

#!/usr/bin/bash
filename="DX.jar"
uid="111,110"

onCallName1="Tom"
onCallName2="Jerry"
onCallName3="Brun"

text="These are people who are on call: @$onCallName1, @$onCallName2 and @$onCallName3. \\n'
Please focus on the cases of online problems. \\n'
Safe cases monitor: https://a.b.com/page/992645614 \\n'
Old cases log: https://a.b.com/page/1012464399 \\n'
Cases feedback: https://a.b.com/page/1041338613"


# run!
java -jar $filename -uid $uid -text $text

参数text应该在 Java 程序中解析并输出如下:

这些是随叫随到的人:@$onCallName1、@$onCallName2 和 @$onCallName3。请关注在线问题的案例。安全案例监控:https : //km.sankuai.com/page/992645614旧案例日志:https : //km.sankuai.com/page/1012464399案例反馈:https : //km.sankuai.com/page/1041338613

但是当我像 一样运行这个 shell 脚本时bash a.sh,它只输出这些:

这些

任何人都可以帮助我并给我一些建议吗?
感谢提前。

安东尼奥·佩特里卡

尝试按如下方式重写您的脚本,请告诉它是否也适合您:

#!/usr/bin/bash
filename="DX.jar"
uid="111,110"

onCallName1="Tom"
onCallName2="Jerry"
onCallName3="Brun"

text="These are people who are on call: @$onCallName1, @$onCallName2 and @$onCallName3. \n'
Please focus on the cases of online problems. \n'
Safe cases monitor: https://a.b.com/page/992645614 \n'
Old cases log: https://a.b.com/page/1012464399 \n'
Cases feedback: https://a.b.com/page/1041338613"


# run!
java -jar "$filename" -uid "$uid" -text "$text"

换句话说:

  1. 不转义回车。
  2. 将 java 命令行参数放在双引号内。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法将参数传递给jar启动器到shell脚本中

将特殊字符作为args从python脚本传递到shell

将参数从shell脚本传递到配置单元脚本

将变量从python传递到shell脚本

将变量从Java传递到Shell脚本

将参数从Shell脚本传递到新会话

“找不到命令”将参数从Makefile传递到Shell脚本

Shell脚本:将变量传递到spark-shell会话

将参数从Shell脚本传递到Python脚本,而不必在命令行上指定参数

在shell脚本中传递参数时更改

将命令行参数从bash脚本逐字传递到程序,并进行转义

将命令输出作为位置参数传递到Linux Shell脚本中的脚本文件

MongoDB-Shell脚本-$ in参数不起作用

Shell脚本:简单的参数比较不起作用

如何将变量从Shell脚本传递到.muttrc?

将文件名从Nautilus传递到Shell脚本

从Fastlane将环境变量传递到Shell脚本

如何将多个变量从 AppleScript 传递到 Shell 脚本?

将jenkins管道中设置的变量传递到shell脚本

将变量从Jython(wsadmin)传递到shell脚本

将python变量传递到shell脚本中

将命名参数传递给Shell脚本

将参数传递给Shell脚本

如何将 jq 值从主 shell 脚本传递到子 shell 脚本

如何将整数参数传递给Shell脚本,然后将其传递给程序?

如何将命令行参数传递到Shell脚本中?

可以将 Jenkins 参数(变量)直接传递到 shell 脚本中吗?

如何将 sqlplus 参数从 shell 脚本传递到 sql 文件

在应用程序脚本中使用 <?= ?> 传递参数时,HtmlService 不起作用