步骤一:
#vim menu #创建菜单函数文件
x=1 #高亮行号,默认为1即可
y=0 #第几行
menu (){ #循环显示菜单的函数
clear
for i in 1,安装ftp服务 2,开关ftp服务 3,退出
do
echo "----------------"
let y++
[ $x -eq $y ] && echo -e "\033[43;93m$i\033[0m" && continue
echo "$i"
done
y=0
echo "----------------"
}
步骤二:可动菜单
$'\033[A'代表键盘的 "上" 按键
$'\033[B'代表键盘的 "下" 按键
#vim ftp.sh
#!/bin/bash
. menu #读入菜单函数
while :
do
menu
read -n 3 c #-n 3是输入足够3个字符就自动进行下一步,c是存储字符的变量
if [ "$c" == $'\033[A' ];then #如果按了 "上" 键
[ $x -eq 1 ] && continue #根据变量x定义高亮行,在第1行就没变化
let x-- #如果不在第1行,就把x-1
elif [ "$c" == $'\033[B' ];then #如果按了 "下" 键
[ $x -eq 3 ] && continue #如果在第3行,没变化
let x++ #如果不在第3行,就把x+1
fi
done
之后执行ftp.sh可以看到菜单,按键盘上下键菜单发生变化