系统管理工具箱
1、需求:Linux提供的丰富的管理命令,用户管理,内存管理,磁盘管理,进程管理,日志管理,文件管理,软件管理,网络管理等等数十个工具包。如果你能通过shell编程,把他们编写到一个程序里。想用某些功能,只需要按回车,就能完成。
2、分析:
- Command action
- f 显示磁盘分区
- d 显示磁盘挂载
- m 查看内存使用
- u 查看系统负载
- q 退出程序
- 请输入工具序号[h进入帮助]:f
- 磁盘 /dev/sda:8589 MB, 8589934592 字节,16777216 个扇区
[root@localhost ~]# vim system.sh #编写脚本
#!/bin/bash
#打印菜单
cat <<EOF
系统工具箱:
f.磁盘管理工具
d.系统挂载工具
m.内存管理工具
u.系统负载工具
q.退出
EOF
EOF
#读取用户输入,进入模式匹配
read -p "请输入工具序号[h进入帮助]:" action
case "$action" in
f)
fdisk -l
;;
d)
df -hT
;;
m)
free -m
;;
u)
uptime
;;
q)
exit
;;
h)
echo "关于该工具,最终解释权归公司所有。"
;;
*)
echo "输入错误"
;;
esac
[root@localhost ~]# bash system.sh #执行脚本
系统工具箱:
f.磁盘管理工具
d.系统挂载工具
m.内存管理工具
u.系统负载工具
q.退出
请输入工具序号[h进入帮助]:f
磁盘 /dev/sda:8589 MB, 8589934592 字节,16777216 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000d966a
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 16777215 7339008 8e Linux LVM
磁盘 /dev/mapper/centos-root:6652 MB, 6652166144 字节,12992512 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:859 MB, 859832320 字节,1679360 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节