linux - 如何让 2 个变量具有 2 个不同的序列 - Bash Linux

标签 linux bash shell seq

我有这个命令,我想用它从摩托罗拉机箱中提取信息。我将使用 SNMP V2 和 Bash 脚本来提取信息。

2 个变量

IP = 机箱 IP (1...10) 的最后八位字节
Port#= 机箱端口 ID (10 10 240)

我的命令是:

for ip in `seq 1 10`;
    do echo Chassis .$ip ; 
    snmpwalk -v2c -c ComunityName 172.27.253.$ip IF-MIB::ifAdminStatus.$port; 
    echo -e "\n";  
done

这个命令不会工作,因为我还没有声明 $port 变量,但是我怎样才能将这个变量集成到同一行命令中,以便它执行 >seq 10 20 30 40 .... 240?

最佳答案

$port 值的内部循环。当您使用 Bash 时,您可以使用 Bash 序列 {1..10} 而不是 seq:

for ip in {1..10}; do 
  echo Chassis .$ip;
  for port in {10..240..10}; do
    echo snmpwalk -v2c -c ComunityName 172.27.253.$ip IF-MIB::ifAdminStatus.$port; echo -e "\n"; 
  done
done

关于linux - 如何让 2 个变量具有 2 个不同的序列 - Bash Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40373278/

相关文章:

python - 操作系统 : using bash to find python is different than using/usr/bin/env python

linux - 如何从 shell 脚本内部更新 shell 脚本

linux - 使用 wget 使用临时目录下载和安装的理想方法?

linux - Lynx的自动化

linux - 虚拟服务器/EC2 上的 32 位与 64 位操作系统

linux - 我应该如何将文件放在 apache2 HTTP 服务器上

linux - 为什么 Perforce 不能在 Linux 上设置环境变量?

linux - 如何使用 perl 脚本更新 nohup.out?

linux - 如何通过 ssh 将 echo 的输出重定向到一个文件

c++ - 如何修复这个简单的 Makefile 错误?