#!/bin/bash
print_info() {
:
}
configure_func_1() {
:
}
configure_func_2() {
:
}
#...
configure_func_k() {
:
}
print_oplist() {
cat <<oplist
1. Print network info
2. Configure_1
3. Configure_2
...
k. Configure_k
0. Exit
oplist
}
#Main
echo "Choose operation:"
print_oplist
read op
while [ "$op" != "0" ]; do
case "$op" in
1) print_info ;;
2) configure_func_1 ;;
3) configure_func_2 ;;
#...
k) configure_func_k ;;
0) : ;;
*) echo "Illegal operation" ;;
esac
if [ "$op" != "0" ]; then
print_oplist
fi
done
IyEvYmluL2Jhc2gKcHJpbnRfaW5mbygpIHsKOgp9CmNvbmZpZ3VyZV9mdW5jXzEoKSB7CjoKfQpjb25maWd1cmVfZnVuY18yKCkgewo6Cn0KIy4uLgpjb25maWd1cmVfZnVuY19rKCkgewo6Cn0KcHJpbnRfb3BsaXN0KCkgewpjYXQgPDxvcGxpc3QKMS4gUHJpbnQgbmV0d29yayBpbmZvCjIuIENvbmZpZ3VyZV8xCjMuIENvbmZpZ3VyZV8yCi4uLgprLiBDb25maWd1cmVfawowLiBFeGl0Cm9wbGlzdAp9CgojTWFpbgplY2hvICJDaG9vc2Ugb3BlcmF0aW9uOiIKcHJpbnRfb3BsaXN0CnJlYWQgb3AKd2hpbGUgWyAiJG9wIiAhPSAiMCIgXTsgZG8KY2FzZSAiJG9wIiBpbgogICAgMSkgcHJpbnRfaW5mbyA7OwogICAgMikgY29uZmlndXJlX2Z1bmNfMSA7OwogICAgMykgY29uZmlndXJlX2Z1bmNfMiA7OwojLi4uCiAgICBrKSBjb25maWd1cmVfZnVuY19rIDs7CiAgICAwKSA6IDs7CiAgICAqKSBlY2hvICJJbGxlZ2FsIG9wZXJhdGlvbiIgOzsKZXNhYwppZiBbICIkb3AiICE9ICIwIiBdOyB0aGVuCiAgICBwcmludF9vcGxpc3QKZmkKZG9uZQ==