我可以用bash而不是序列设置特定数字吗?

时间:2015-06-08 02:45:35

标签: linux bash variables scripting

我目前正在尝试使用某些特定数字在bash中创建一个脚本。 这是针对不同的程序,但是对于这个例子,我将使用这个基本的ping脚本。

在此示例中,脚本将ping 192.168.1.215,216等,最多为225

for i in `seq 215 225`; do ping -c 1 -W 1 192.168.1.$i ; done

我的问题是 - 有没有办法将变量(在这种情况下,'i')设置为特定的数字列表,而不是范围?

例如,让它尝试215,217和220,特别是 - 不尝试其间的任何数字吗?

1 个答案:

答案 0 :(得分:3)

for i in 215 217 220; do ping -c 1 -W 1 192.168.1.$i; done

只需列出您要测试的数字。如果你想将数字传递给脚本,那么可能:

for i in "$@"; do ping -c 1 -W 1 192.168.1.$i ; done

或者你甚至可以省略双引号(但通常需要双引号)。