【发布时间】:2016-04-28 07:18:55
【问题描述】:
您好,我正在运行的 salt 脚本有一个相当大但混乱的输出。
基本上我最干净的输出如下所示:
MINION:server1.xyz.com
MINION:server2.xyz.com
MINION:server3.xyz.com
filer1:/vol/storagestuffs/volpath1
filer1:/vol/storagestuffs/volpath2
filer1:/vol/storagestuffs/volpath3
filer1:/vol/storagestuffs/volpath4
MINION:server4.xyz.com
filer4:/vol/storagestuffs/volpath1
MINION:server5.xyz.com
MINION:server6.xyz.com
MINION:server7.xyz.com
filer3:/vol/storagestuffs/volpath1
我想要的只是返回下面有文件管理器的仆从以及它们下面的所有文件管理器,我希望将其格式化为:
MINION:server3.xyz.com filer1:/vol/storagestuffs/volpath1
MINION:server3.xyz.com filer1:/vol/storagestuffs/volpath2
MINION:server3.xyz.com filer1:/vol/storagestuffs/volpath3
MINION:server3.xyz.com filer1:/vol/storagestuffs/volpath4
MINION:server4.xyz.com filer4:/vol/storagestuffs/volpath1
MINION:server7.xyz.com filer3:/vol/storagestuffs/volpath1
我研究了 if 语句、递归语句等。我要么无法理解 bash 递归语句,要么这不是我想要做的。我希望找到一种有效的方法来执行此操作,而无需多次扫描文件。
有没有使用 xargs 的棘手方法? grep 中有什么可以做到这一点吗?
感谢您的帮助!
【问题讨论】:
标签: bash if-statement recursion grep xargs