0
私は関数を呼び出しているが、その関数の変数$ Xは外に出ているような単純なコードに問題があります。なぜなら、出力メッセージは常に "Your interface is " ... 何か不足していますか?関数内の変数-Linuxシェルスクリプト
#! /bin/bash
function choose
{
echo -e " Choose your interface:"
echo -e " 1) WLan0"
echo -e " 2) WLan0mon"
echo -e " Choose: "
read -e X
if [ "$X" = "1" ]
then
X="wlan0"
elif [ "$X" = "2" ]
then
X="wlan0mon"
fi
}
(choose)
echo -e "Your interface is $X."
'X'はあなたの' choose'関数のスコープの内部にのみ存在すると思います。関数定義/呼び出しをすべて削除するか、 'choose'関数の本体の中で' echo'を動かしてみてください。 – Mark