基于ip列表的bash运行命令[重复]

Posted

技术标签:

【中文标题】基于ip列表的bash运行命令[重复]【英文标题】:bash run command based on a list of ip [duplicate] 【发布时间】:2016-04-25 06:15:49 【问题描述】:

我创建了这个 bash 脚本来在我的ip_list 中列出的每个主机上运行 python 代码:

#!/bin/bash

declare -a ip_list=('10.99.1.1' '10.99.1.2' '10.99.1.3"' '10.99.1.4');

for i in $(ip_list) ; do 
    ssh -i ~/Downloads/abc.pem -t -t ec2-user@$i "sudo   python /home/user/abc.py"
done

但我得到了错误:

Error: line 4: ip_list: command not found

我在这里做错了什么?谢谢

【问题讨论】:

使用:for i in "$ip_list[@]" ; do$(ip_list) 尝试运行ip_list 命令 【参考方案1】:

按照@anubhava 的建议,试试 $ip_list[@],如下所示:

declare -a ip_list=('10.99.1.1' '10.99.1.2' '10.99.1.3' '10.99.1.4');

for i in $ip_list[@] ; do
    ssh -i ~/Downloads/abc.pem -t -t ec2-user@$i "sudo   python /home/user/abc.py"
done

【讨论】:

以上是关于基于ip列表的bash运行命令[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用子进程从 Python 运行 PDAL bash 命令的问题 [重复]

运行 ssh 并立即执行命令 [重复]

临时更改 bash 中的当前工作目录以运行命令 [重复]

Python 3 不会从 Git Bash 命令行运行 [重复]

运行bash命令并在超过特定时间时将其杀死[重复]

SSH到服务器,Sudo su - 然后在bash中运行命令[重复]