这是一个宝藏文章
找到这里说明你已经在烦恼大作业的事情了吧
没关系 我会出手 哈哈哈哈
好啦 步入正题
原理啥的我就不介绍了 知道你们不想看 所以嘛还是直接上代码比较合适
1、基本功能
#!/bin/bash
echo "开始进行体检:"
echo "电脑主机的基本情况:" > wfs.txt
uname -a >> wfs.txt
echo "输出目录的基本情况:" >> wfs.txt
sudo cat /etc/passwd >> wfs.txt
echo "基本组情况:" >> wfs.txt
sudo cat /etc/group >> wfs.txt
echo "硬盘情况:" >> wfs.txt
sudo fdisk -l >> wfs.txt
echo "进程情况:" >> wfs.txt
ps -A >> wfs.txt
echo "网络基本情况:" >> wfs.txt
ifconfig >> wfs.txt
sleep 0.5s
echo "准备就绪"
echo "清选下面的模式"
echo "##############################################################"
echo "# #"
echo "# 1、主机的基本信息 #"
echo "# 2、输出到文件 #"
echo "# 3、输出到屏幕和文件 #"
echo "# #"
echo "##############################################################"
echo "请选择模式(输入1或2或3)"
read a
case $a in
1)echo "模式1:输出到屏幕"
sleep 1s
echo "1.主机的基本情况:"
echo "1.主机的基本情况:"> wfs.txt
time1=$(date "+ %H:%M:%S")
echo $time1 >> wfs.txt
echo $time1
uname -a > 1.txt
uname -a >> wfs.txt
sleep 1s
uname -a
sleep 1s
echo "2.目录基本情况:"
echo "2.目录基本情况:">> wfs.txt
time2=$(date "+ %H:%M:%S")
echo $time2 >> wfs.txt
echo $time2
sleep 1s
ls -alF > 2.txt
ls -alF >> wfs.txt
ls -alF
sleep 1s
echo "3.用户基本情况:"
echo "3.用户基本情况:">> wfs.txt
time3=$(date "+ %H:%M:%S")
echo $time3 >> wfs.txt
echo $time3
sleep 1s
sudo cat /etc/passwd > 3.txt
sudo cat /etc/passwd >> wfs.txt
sleep 1s
sudo cat /etc/passwd
sleep 1s
echo "4.用户及组情况:"
echo "4.组基本情况:">> wfs.txt
time4=$(date "+ %H:%M:%S")
echo $time4 >> wfs.txt
echo $time4
sleep 1s
sudo cat /etc/group > 4.txt
sudo cat /etc/group >> wfs.txt
sleep 1s
sudo cat /etc/group
sleep 1s
echo "5.硬盘基本情况:"
echo "5.硬盘基本情况:">> wfs.txt
time5=$(date "+ %H:%M:%S")
echo $time5 >> wfs.txt
echo $time5
sleep 1s
sudo fdisk -l > 5.txt
sudo fdisk -l >> wfs.txt
sleep 1s
sudo fdisk -l
sleep 1s
echo "6.进程基本情况:"
echo "6.进程基本情况:">> wfs.txt
time6=$(date "+ %H:%M:%S")
echo $time6 >> wfs.txt
echo $time6
sleep 1s
ps -A > 6.txt
ps -A >>wfs.txt
sleep 1s
ps -A
sleep 1s
echo "7.网络基本情况:"
echo "7.网络基本情况:">> wfs.txt
time7=$(date "+ %H:%M:%S")
echo $time7 >> wfs.txt
echo $time7
sleep 1s
ifconfig > 7.txt
ifconfig >> wfs.txt
sleep 1s
ifconfig
sleep 1s
# 覆盖写到桌面
cat wfs.txt > ~/wfs.txt
/usr/bin/mysql xiaobai -uroot -proot -e "truncate table \`stu1\` ;"
while read rows1
do
a1="$a1$rows1\n"
done < 1.txt
while read rows2
do
a2="$a2$rows2\n"
done < 2.txt
while read rows3
do
a3="$a3$rows3\n"
done < 3.txt
while read row4
do
a4="$a4$row4\n"
done < 4.txt
while read rows5
do
a5="$a5$rows5\n"
done < 5.txt
while read rows6
do
a6="$a6$rows6\n"
done < 6.txt
while read rows7
do
a7="$a7$rows7\n"
done < 7.txt
/usr/bin/mysql xiaobai -uroot -proot -e "INSERT INTO \`stu1\`
VALUES ('主机基本情况','$a1','$time1'),
('目录基本情况','$a2','$time2'),
('用户基本情况','$a3','$time3'),
('组基本情况','$a4','$time4'),
('硬盘基本情况','$a5','$time5'),
('进程基本情况','$a6','$time6'),
('网络基本情况','$a7','$time7');"
;;
2)echo "2:输出到文件(输入目录及文件名):"
echo "输入目录的名称:"
read dir
echo "输入文件名称:"
read proj
mkdir $dir
touch $proj
cat wfs.txt > $proj
mv -n $proj $dir
sleep 1s
ls
echo "目录 $dir 和 文件 $proj 创建成功"
;;
3)echo "3:显示并输出到文件(输入目录和文件名)"
echo "请输入目录名:"
read dir
echo "请输入文件名:"
read proj
mkdir $dir
touch $proj
echo "目录 $dir 文件 $proj 创建成功"
echo "输出到屏幕文件:"
read dir
echo "输入文件名称:"
read proj
mkdir $dir
touch $proj
echo "目录 $dir 和 文件 $proj 创建成功"
echo "输出到屏幕和文件:"
sleep 2s
cat $proj
cat wfs.txt > $proj
mv -n $proj $dir
sleep 1s
ls
esac
2、PHP网页发布数据库信息
<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>系统体检结果</title>
</head>
<body>
<center>
<?php
include_once "web.php";
?>
<h3>207的体检信息</h3>
<table width="1000" border="1">
<tr>
<th>name</th>
<th>text</th>
<th>time</th>
</tr>
<?php
//1.连接数据库
try {
$pdo = new PDO("mysql:host=127.0.0.1;dbname=xiaobai;", "root", "root");
} catch (PDOException $e) {
die("数据库连接失败" . $e->getMessage());
}
//2.解决中文乱码问题
$pdo->query("SET NAMES 'UTF8'");
//3.执行sql语句,并实现解析和遍历
$sql = "SELECT * FROM `stu1` ";
foreach ($pdo->query($sql) as $row) {
echo "<tr>";
echo "<td>{
$row['name']}</td>";
echo "<td>{
$row['text']}</td>";
echo "<td>{
$row['time']}</td>";
echo "<td>";
echo "</tr>";
}
?>
</table>
</center>
</body>
</html>
3、C语言实现访问数据库
准备工作
1、安装MySQL:sudo apt-get install mysql-server mysql-client
2、安装MySQL开发包:sudo apt-get install libmysqlclient-dev
此时需要用到的头文件会出现在/usr/include/mysql/里
C语言主体代码块:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/*引入连接Mysql的头文件*/
#include "/usr/include/mysql/mysql.h"
/*定义一些数据库连接需要的宏*/
#define HOST "127.0.0.1" /*MySql服务器地址*/
#define USERNAME "root" /*用户名*/
#define PASSWORD "root" /*数据库连接密码*/
#define DATABASE "xiaobai" /*需要连接的数据库*/
// #define sql "select * from `table`;"
#define sql "select * from `stu1`;"
// 执行sql语句的函数
int main() {
MYSQL my_connection; /*数据库连接*/
int res; /*执行sql语句后的返回标志*/
MYSQL_RES* res_ptr; /*执行结果*/
MYSQL_ROW result_row; /*按行返回查询信息*/
int row, column; /* 定义行数,列数*/
mysql_init(&my_connection);
if (mysql_real_connect(&my_connection, HOST, USERNAME, PASSWORD, DATABASE, 0, NULL, CLIENT_FOUND_ROWS)) {
printf("数据库连接成功!");
/*设置查询编码为 utf8, 支持中文*/
mysql_query(&my_connection, "set names utf8");
res = mysql_query(&my_connection, sql);
if (res) {
/*现在就代表执行失败了*/
printf("Error: mysql_query !\n");
/*不要忘了关闭连接*/
mysql_close(&my_connection);
} else {
/*现在就代表执行成功了*/
/*mysql_affected_rows会返回执行sql后影响的行数*/
printf("%ld 行受到影响!\n", mysql_affected_rows(&my_connection));
// 把查询结果装入 res_ptr
res_ptr = mysql_store_result(&my_connection);
// 存在则输出
if (res_ptr) {
// 获取行数,列数
row = mysql_num_rows(res_ptr);
column = mysql_num_fields(res_ptr);
// 执行输出结果,从第二行开始循环(第一行是字段名)
for (int i = 1; i < row + 1; i++) {
// 一行数据
result_row = mysql_fetch_row(res_ptr);
for (int j = 0; j < column; j++) {
printf("%s\n", result_row[j]);
}
printf("\n");
}
}
/*不要忘了关闭连接*/
mysql_close(&my_connection);
}
}
else {
printf("数据库连接失败!");
}
}
end
有用的话记得+个关注和点个赞哦
最后祝大家都搞优秀~~~~~~~~~~~~~~~~~~哈哈哈哈哈~拜拜喽