它不让我回复评论所以在这里编辑,使用Linux作为操作系统。 我使用下面提到的门票创建,但-k参数,重复参数获取消息在" "如果有""在消息中,然后这些参数搞砸了,消息不会被转发。 如何在-k参数中转义这些双引号以使其通过? 提前致谢
config/test.exs
答案 0 :(得分:2)
对我而言,引用shell插值变量的最简单方法是:
''
'
替换为'"'"'
所以替换
$SEND_EVENT=`/opt/SendEvent/dist/SendEvent/SendEvent send -q "$TOOL" -a "$MSG_APPL" -n "$MSG_NODE_NAME" -p "$ESM_PROFILE" -s "$DSOM_SEV" -k "$DEDUPLICATION" -c "$MANAGEMENT_ID" -m "$LONG_TEXT" -t "ABC $SHORT_TEXT" -z "ABC" -y \"$DEFAULT_Q\"` ;
与
(my $quoted_DEDUPLICATION = $DEDUPLICATION) =~ s/'/'"'"'/g;
$SEND_EVENT=`/opt/SendEvent/dist/SendEvent/SendEvent send -q "$TOOL" -a "$MSG_APPL" -n "$MSG_NODE_NAME" -p "$ESM_PROFILE" -s "$DSOM_SEV" -k '$quoted_DEDUPLICATION' -c "$MANAGEMENT_ID" -m "$LONG_TEXT" -t "ABC $SHORT_TEXT" -z "ABC" -y \"$DEFAULT_Q\"` ;
(并对所有其他参数执行相同操作)。
或者,使用IPC :: System :: Simple :: capturex并传递数组中的所有参数。