我尝试从 Linux 命令行读取 varnish 版本,但以下内容不起作用:
varnishd -V | grep -P '(?<=varnish-)[0-9.]+' -o
这总是返回这个
varnishd (varnish-3.0.3 revision 9e6a70f)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2011 Varnish Software AS
而不仅仅是这个
3.0.3
关于我做错了什么的任何提示吗?
谢谢
答案1
显然varnishd -V
写的是stderr
not stdout
。为了将结果通过管道传输到grep
,您需要重定向流,例如
varnishd -V 2>&1 | grep -P '(?<=varnish-)[0-9.]+' -o