ubuntu体检系统-上篇

ubuntu体检系统-上篇

一、目标要求:

1、使用shell脚本开发。
2、无参数运行时显示说明。根据不同参数,输出到屏幕或文件或两边都输出。输出到文件时,提示用户输入目录及文件名。根据用户输入内容建立目录。
3、体检内容至少包括:主机基本情况、目录基本情况、用户及组情况、硬盘基本情况、进程基本情况、网络基本情况。
4、通过任务计划执行脚本
5、通过LAMP平台展示脚本执行结果。
5.1 设计表,体检结果分时间、项目存进mysql数据库。
5.2 使用php语言,通过apache发布网页,从数据库获取体检结果展示。
6、通过C语言从数据库获取数据,展示体检结果。

需要的环境:
Ubuntu、mysql、Apache、php7

二、系统方案设计

创建一个脚本,并编写程序
在linux下先创建一个文件夹用本项目开发。并且进入

mkdir linuxshiyan 
cd linuxshiyan

创建shell脚本

touch test.sh

这里之后我用的是VScode打开这样编译方便,不用也没关系,用vi直接将代码复制粘贴就好了。

编写程序

在这里插入图片描述
运行此脚本,显示运行结果
在这里插入图片描述

三、实现过程

1.用case语句选择3种方式输出到屏幕或文件或两边都输出

sleep 0.5s
echo "体检开始."
sleep 1s
echo "请选择检查方式1(体检\)2(输出到文件\)3(输出到屏幕同时也输出到文件)(input number 1 or 2 or 3 )"
read a
case $a in

输出结果:
在这里插入图片描述

2.输入1为输出到屏幕

就是边输入边存入

1)echo "1:输出到屏幕:"
sleep 1s

1)输出主机基本情况:uname -a

echo "1.主机基本情况:"
echo "1.主机基本情况:"> PE.txt
time1=$(date "+ %H:%M:%S")   //创建当时的时间
echo $time1 >> PE.txt                //存入该时间
echo $time1
uname -a > 1.txt
uname -a >> PE.txt
sleep 1s
uname -a
sleep 1s

输出结果:
在这里插入图片描述

2)目录基本情况:ls -alF

echo "2.目录基本情况:"
echo "2.目录基本情况:">> PE.txt
time2=$(date "+ %H:%M:%S")
echo $time2 >> PE.txt
echo $time2
sleep 1s
ls -alF > 2.txt
ls -alF >> PE.txt
ls -alF
sleep 1s

输出结果:
在这里插入图片描述

3)输出用户基本情况:sudo cat /etc/passwd

echo "3.用户基本情况:"
echo "3.用户基本情况:">> PE.txt
time3=$(date "+ %H:%M:%S")
echo $time3 >> PE.txt
echo $time3
sleep 1s
sudo cat /etc/passwd > 3.txt
sudo cat /etc/passwd >> PE.txt
sleep 1s
sudo cat /etc/passwd
sleep 1s

输出结果:
在这里插入图片描述

4)输出组基本情况:sudo cat /etc/group

echo "4.组基本情况:"
echo "4.组基本情况:">> PE.txt
time4=$(date "+ %H:%M:%S")
echo $time4 >> PE.txt
echo $time4
sleep 1s
sudo cat /etc/group > 4.txt
sudo cat /etc/group >> PE.txt
sleep 1s
sudo cat /etc/group
sleep 1s

输出结果:
在这里插入图片描述

5)输出硬盘基本情况:sudo fdisk -l

echo "5.硬盘基本情况:"
echo "5.硬盘基本情况:">> PE.txt
time5=$(date "+ %H:%M:%S")
echo $time5 >> PE.txt
echo $time5
sleep 1s
sudo fdisk -l > 5.txt
sudo fdisk -l >> PE.txt
sleep 1s
sudo fdisk -l
sleep 1s

输出结果:
在这里插入图片描述

6)输出进程基本情况:ps -A

echo "6.进程基本情况:"
echo "6.进程基本情况:">> PE.txt
time6=$(date "+ %H:%M:%S")
echo $time6 >> PE.txt
echo $time6
sleep 1s
ps -A > 6.txt
ps -A >>PE.txt
sleep 1s
ps -A
sleep 1s

输出结果:
在这里插入图片描述

7)输出网络基本情况:ifconfig

echo "7.网络基本情况:"
echo "7.网络基本情况:">> PE.txt
time7=$(date "+ %H:%M:%S")
echo $time7 >> PE.txt
echo $time7
sleep 1s 
ifconfig > 7.txt
ifconfig >> PE.txt
sleep 1s
ifconfig
sleep 1s

输出结果:
在这里插入图片描述

3、输入2输出到文件

2)echo "2:输出到文件:"
echo "输入目录的名称:"
read dir
echo "输入文件名称:"
read proj
mkdir $dir
touch $proj
cat PE.txt > $proj
mv -n $proj $dir
sleep 1s
ls
echo "目录 $dir 和 文件 $proj 创建成功"
;;

结果:
在这里插入图片描述

4、输入3输出到文件

3)echo "3:输出到屏幕和文件:"
echo "输入目录的名称:"
read dir
echo "输入文件名称:"
read proj
mkdir $dir
touch $proj
echo "目录 $dir 和 文件 $proj 创建成功"
echo "输出到屏幕和文件:"
sleep 2s
cat $proj
cat PE.txt > $proj
mv -n $proj $dir
sleep 1s
ls 
esac

四、执行代码

1.执行代码指令

在vscode也是一样的
打开终端:
在这里插入图片描述

bash gjy_jb.sh 

运行结果:
在这里插入图片描述

2.通过任务计划执行脚本

代码将结果提前存入PE.txt文件了

echo "开始体检:"
echo "主机基本情况 " > PE.txt   
uname -a >> PE.txt
echo "输出目录基本情况:" >> PE.txt
ls -alF >> PE.txt
echo "用户基本情况:" >> PE.txt
sudo cat /etc/passwd >> PE.txt
echo "组基本情况:" >> PE.txt
sudo cat /etc/group >> PE.txt
echo "硬盘基本情况:" >> PE.txt
sudo fdisk -l >> PE.txt
echo "进程基本情况:" >> PE.txt
ps -A >>PE.txt
echo "网络基本情况:" >> PE.txt
ifconfig >> PE.txt

1)为了crontab能够顺利执行,gjy_jb.sh对其权限进行修改:

 chomd +x gjy_jb.sh 

在这里插入图片描述
2)执行crontab指令

sudo crontab -e

在这里设置一个定期执行的时间
从左到右依次为
分钟 小时 天 月 星期 绝对文件路径
![在这里插入图片描述](https://img-blog.csdnimg.cn/dc88d1208b174f398136e6c3e148d4df.png
上图
代表每天、月、星期的19:43 bash运行 文件/home/yang/linuxshiyan/dzy/gjy_jb.sh

4)文件已自动生成:
时间一到文件自动生成

ll #查看

在这里插入图片描述

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Ubuntu-18.04-x64 是一款基于Debian Linux的操作系统版本。它是由Ubuntu社区开发和维护的,主要用于个人电脑和服务器。 Ubuntu-18.04-x64 提供了现代化的桌面环境,采用了GNOME 3作为默认桌面,为用户提供了友好且直观的操作界面。它还支持多种自定义选项,让用户能够根据自己的需要对桌面进行个性化设置。 作为一款开源操作系统Ubuntu-18.04-x64 提供了丰富的软件资源。用户可以通过Ubuntu软件中心轻松安装和管理数千种免费的应用程序。此外,用户还可以通过终端命令行使用包管理器apt-get来安装其他软件。 Ubuntu-18.04-x64 还提供了强大的安全性。它内置了防火墙和安全更新功能,可以及时修补系统漏洞,以防止恶意软件和网络攻击。同时,它还支持文件加密和用户帐户管理,用于增强用户数据的安全性和隐私。 对于开发人员和系统管理员而言,Ubuntu-18.04-x64 是一个理想的选择。它提供了广泛的开发工具和环境,包括Python、C++、Java等编程语言和Apache、MySQLPHP等服务器软件。此外,Ubuntu-18.04-x64 还提供了轻量级容器技术Docker和Kubernetes,方便用户进行应用程序的部署和管理。 总结来说,Ubuntu-18.04-x64 拥有强大的功能和高度的可定制性,适用于不同类型的用户。无论是高级用户、开发人员还是普通用户,都能够在Ubuntu-18.04-x64 上获得良好的使用体验和稳定的系统性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值