我正在Unix框中运行以下命令,它是gfsh命令:
$GEMFIRE_HOME/bin/gfsh -e "connect --locator=$HOST[22710]" -e "list members" | grep "coordinator"
但是要注意的是,如果返回的成员包含100个以上的字符,则它们的输出为..
,如下所示:
locator:103268:locator)<ec><v87><coordinato..
因此grep
失败。我们知道可以更改grep
模式,但是我们只想grep特定的协调器。
为什么将输出行调整为..
?
我搜索了下面的文档。
https://gemfire.docs.pivotal.io/91/geode/tools_modules/gfsh/configuring_gfsh.html
gfsh命令(例如
query
)产生的输出带有宽列,这些列可能 变得不对齐,需要手动重新格式化以查看输出。 如果输出不能满足终端的可用宽度,请使用gfsh 自动修剪列的宽度以适合。您可以禁用此 通过将gfsh环境变量GFSH.TRIMSCRWIDTH
设置为false
。
有什么建议吗?
我试图通过awk '|'
来获得唯一的第二种模式,但是协调员仍然是协调员。
也尝试过cut
,没有用。
$GEMFIRE_HOME/bin/gfsh -e "connect --locator=$HOST[22710]" -e "list members" | awk -F'|' '{print $2}'
103268:locator)<ec><v87><coordinato..
$GEMFIRE_HOME/bin/gfsh -e "connect --locator=$HOST[22710]" -e "list members" | awk -F'|' '{print $2}'
应该能够grep“协调器” gfsh的输出,并且输出中的行中不应包含..
。
答案 0 :(得分:0)
如果将以下内容添加到gfsh命令,则应看到完整的输出:
-e "set variable --name=APP_RESULT_VIEWER --value=x"
这是一种解决方法-值x
是任意的,这只是避免了您看到的默认行为。