尊敬的同事,For循環遍歷IP和主機名
我正在尋找更好的慶典方式/方法創建一個循環,以適應我的要求,我有一個命令被稱爲「ldaphost」其中一個IP地址分配給具有以下提供的syntex的主機。
例子:
$ ldaphost --insert "192.168.1.1 mytestvm1"
雖然我在下面的for循環這是工作,我作爲一個變通截至目前,另外尋找與bash或外殼相同的專家,更好的巧妙的解決辦法。
要求是:
我有一個IP範圍192.168.1.1
到192.168.1.254
和相同的格式主機名作爲mytestvm1
到mytestvm254
其中我加入到我下面的腳本。
#!/bin/bash
for ip in {1..254}
do
ldaphost --insert "192.168.1.${ip} mytestvm${ip}"
done
還有一兩件事我想知道,如果我們可以作爲預答案添加密碼進入劇本,因爲這是詢問密碼在每個迭代上..
bash-4.1$ cat reservHost.sh
#!/bin/bash
for ((i = 13 i <= 15; i++)); do
ldaphost --insert "1192.168.1.$i mytestvm$i"
done
bash-4.1$ ./reservHost.sh
Password:
Inserted: 192.168.1.13 mytestvm13
Password:
Inserted: 192.168.1.14 mytestvm14
你能澄清你的問題是什麼嗎? – Chiru
我真的不認爲有一個更好的方法是不完全不可讀和可維護的。您提供的代碼似乎與其將要獲得的一樣好。不錯的工作! –
@Chiru我期待着如果在bash中有更好的方法來實現我創建的同一個腳本。可能在數組中有IP和主機名等值,我只是學習者。 – krock1516