很多朋友说看批处理那样的菜单很熟悉,在 Shell 里也能做到,来看例子:
#!/bin/bash
whiletrue
do
echo"==================="
echo"菜单:"
echo"1. 显示当前时间"
echo"2. 查看当前用户"
echo"3. 显示磁盘使用"
echo"4. 退出"
echo"==================="
read -p "请输入你的选择 [1-4]:" choice
case$choicein
1)
echo"当前时间:$(date)"
;;
2)
echo"当前用户:$(whoami)"
;;
3)
df -h
;;
4)
echo"退出菜单,再见!"
break
;;
*)
echo"请输入有效选项!"
;;
esac
echo""
done
保存为 menu.sh
,赋予权限后运行:
chmod +x menu.sh
./menu.sh
这段脚本包含了:
while true
read
case ... esac
break
“三剑客”指的是:
grep(文本匹配)
sed(文本替换、行编辑)
awk(文本格式化、提取字段)
grep "root" /etc/passwd
mysql
改成 mariadb
sed 's/mysql/mariadb/g' config.txt
awk '{print $1, $3}' /etc/passwd
这些工具我们后续会出专门的篇幅来系统讲。文章会围绕:入门场景 + 基础语法 + 实战脚本。「别怕,都是一行一行教!」
END