【问题标题】:Line trimed to .. in gfsh command在 gfsh 命令中将行修剪为 ..
【发布时间】:2019-01-10 12:43:16
【问题描述】:

我在 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 "coordinator" gfsh 的输出,并且输出的行中不应有 ..

【问题讨论】:

    标签: grep gemfire geode gfsh


    【解决方案1】:

    如果您将以下内容添加到您的 gfsh 命令中,您应该会看到完整的输出:

    -e "set variable --name=APP_RESULT_VIEWER --value=x"
    

    这是一种解决方法 - 值 x 是任意的,这只是避免了您看到的默认行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-23
      • 2020-01-14
      • 2014-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-10
      相关资源
      最近更新 更多