2014-02-17 56 views
0

我正在腳本安裝陣列raid5。如果我想繼續創建數組,則在插入auto = yes時遇到問題。我試過--auto = yes(http://www.linuxmanpages.com/man8/mdadm.8.php),但很不確定放置在哪裏。自動是對raid5陣列腳本

#!/bin/bash 
mdadm mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdc1 /dev/sdd1 /dev/sde1 --spare-devices=1 /dev/sdf1 

if [ $? -eq 0 ]; then 
    echo OK 
else 
    echo FAIL 
fi 

回答

2

1) 可以使用HEREDOC來解決這些問題。

例如用於passwd命令:

#!/bin/bash 
passwd user <<EOF 
mypassword 
mypassword 
EOF 

你也可以運行你的腳本,並把heredoc

./script <<EOF 
>yes 
>yes 
>no 
>EOF 

UPDATE:

這是最後你想什麼

,如果你有一個問題:

./script <<EOF 
>yes 
>EOF 

此外,您可以:

#!/bin/bash 
mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdc1 /dev/sdd1 /dev/sde1 --spare-devices=1 /dev/sdf1 <<EOF 
yes 
EOF 

2) 還有另一種解決方案:

yes | command-that-asks-for-input 

,或者,如果資本'Y'是必填項:

yes Y | command-that-asks-for-input 
+0

這對我的情況如何工作? – user3185936

+1

@ user3185936請參閱更新部分 – MLSC

+0

如果我想將它作爲腳本來檢查命令是否運行。這將如何工作? – user3185936