我使用命令xmllint来验证Linux机器上的xml文件
我需要的是无提示模式,没有输出,而我的验证将仅使用退出代码($?)
正如我们在此处看到的,当xml错误时,即使设置了--noout标志,我在标准输出上也会出现错误
xmllint --noout CreDefault.XML
Default.XML:16: parser error : Opening and ending tag mismatch: Networks line 6 and root
orrectiveActions/><fallback/></ErrorHandler></C></T><Vars/></G></Generic></ro ot>
^
Default.XML:16: parser error : Premature end of data in tag root line 1
orrectiveActions/><fallback/></ErrorHandler></C></T><Vars/></G></Generic></ro ot>
是否可以将命令配置为静默模式?
这样我可以检查$吗?只要?
我需要的是:
xmllint --noout CreDefault.XML
echo $?
1
最佳答案
我看不到让xmllint
保持沉默的任何方法,这意味着,如果您真的不想看到错误输出,则只需要自己重定向即可。
xmllint --noout CreDefault.XML 2>/dev/null
(从注释中的讨论中注意到,这在
(t)csh
shell中不起作用。)