我正在研究一个Linux服务器并且有一个服务器列表我想用盐堆栈(DSC工具)控制我在linux +上工作时遇到了一个非常简洁的命令 - xargs I我一直在使用它来简化我的linux管理生活,然而我遇到了一个问题,我想知道是否有一个简单的解决方案
我正在追踪整个环境中的一些ntp问题,但问题是我没有在数据集中附加FQDN的服务器列表。不幸的是,盐需要fqdn来查看设备,否则每次都会出错。现在我可以将列表放入记事本++并以这种方式处理.servers.fakefqdn.com,但我想知道是否有办法在命令本身中执行此操作
这是我当前的命令:
cat servers | xargs -I % sudo salt % cmd.run 'date'
是否可以执行以下操作:
cat servers | xargs -I % sudo salt %+.servers.fakefqdn.com cmd.run 'date'
所以如果我的服务器列表在哪里:
Bobsburgers
SouthPark
RickAndMorty
xargs命令的最终目标将运行以下命令:
salt Bobsburgers.servers.fakefqdn.com cmd.run 'date'
salt SouthPark.servers.fakefqdn.com cmd.run 'date'
salt RickAndMorty.servers.fakefqdn.com cmd.run 'date'
答案 0 :(得分:1)
for server in $(< servers); do echo salt ${server}.servers.fakefqdn.com cmd.run 'date'; done
答案 1 :(得分:0)
使用xargs,这应该可以正常工作:
cat servers | xargs -I % sudo salt %.servers.fakefqdn.com cmd.run 'date'