【问题标题】:Ping subnet but skip some IPs in range with bashPing 子网但使用 bash 跳过范围内的一些 IP
【发布时间】:2020-02-26 00:26:08
【问题描述】:

我有一个简单的 for 循环,它使用 ssh 获取子网上的主机名。是否可以让它在同一个循环中跳过一定数量的 IP?这是我使用的:

for i in 192.168.138.{1..254}; do ssh $i "hostname -s";done

我想跳过 192.168.138.80 到 100。我尝试了以下操作,但没有成功。

for i in 192.168.138.{1..79..101..254}; do ssh $i "hostname -s";done

for i in 192.168.138.{1..79}{101..254}; do ssh $i "hostname -s";done

我有什么办法可以在一个班轮中做到这一点?

【问题讨论】:

    标签: bash loops


    【解决方案1】:

    花括号语法(序列表达式)可以这样嵌套:

    for i in {{1..79},{101..254}}; do ssh 192.168.138."$i" "hostname -s"; done
    

    【讨论】:

      猜你喜欢
      • 2019-08-21
      • 1970-01-01
      • 2015-08-29
      • 1970-01-01
      • 2018-08-16
      • 1970-01-01
      • 2017-10-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多