【发布时间】:2016-11-05 18:06:22
【问题描述】:
我需要帮助来打印综合“摘要”字符串。我有一个执行程序的触发器:
begin
for each row critical in alerts.status where critical.AlertKey = 'DISK_USAGE_CRIT'
begin
execute send_email( critical.Node, critical.Severity, critical.AlertKey, 'NetcoolEmail', critical.Summary, 'WINITMSVR631');
end;
end
该触发器将关键节点、严重性、警报键、“NetcoolEmail”、摘要和主机名的值作为参数传递给名为send_email 的过程。
这是程序主体:
(node char(1), severity int, situation char(1), email char(1), summary char(1), hostname (1)).
然后,此过程将这些参数的值传递给批处理文件中的变量。
set node=%1
set situation=%3
set summary=%5
echo %node% >> C:\IBM\logtest.txt
echo %situation% >> C:\IBM\logtest.txt
echo %summary% >> C:\IBM\logtest.txt
当我回显所有变量并将它们重定向到文本文件时,summary 字符串被截断,而其他字符串按预期打印。
这是汇总变量完全打印后的样子:
DISK_USAGE_CRIT[(%_Used>=1 AND WTLOGCLDSK.INSTCNAME AND Disk_Name="C:" ) ON Primary:WINSVR2K8:NT ON C: (%_Used=41 Disk_Name=C: )]
然而,它是这样打印的:
DISK_USAGE_CRIT[(%_Used
其余部分未打印。
为什么摘要字符串没有输出完整?
【问题讨论】:
-
%summary%包含需要转义的字符,例如> -
你好大卫,有什么方法可以完全打印摘要吗?谢谢
-
试试
set summary="%5" -
你好大卫,我试过 set summary="%5" 然后它返回 "'DISK_USAGE_CRIT[(%_Used" 。谢谢你大卫
标签: batch-file escaping monitoring tivoli gitlab-omnibus