0

我正在尝试定义服务器集群的成员减去运行此脚本的机器。“/servers”文件是由应用程序控制的动态文件。集群成员以这种格式位于文件的最底部:host1.domain.com https://host1.domain.com:444

我有来自不同脚本的这个片段,它要求所有集群成员。它为我提供了 FQDN 格式的服务器。我想要做的是让我的输出排除当前机器。如何让它搜索“/servers”文件并显示集群成员!= $hostname,可以这么说?

# !/bin/bash
CLUSTER=$(awk '{ print $1 }' /servers | grep domain.com)
4

1 回答 1

1

awk 可以做 grep 做的事情,所以将其构建在:

CLUSTER=$(
    awk -v hostname=$(hostname) -v domain="domain.com" '
        $1 ~ domain && $1 !~ hostname {print $1}
    ' /servers
)
于 2013-07-05T19:14:35.900 回答