linux操作系统中的shell编程----基于头歌实践教学编写shell脚本测试结果

一.前言

今天,又要使用我的大学技能—写实验报告。linux操作系统课程实验课到了尾声,这是最后一次linux操作系统实验报告,我喜极而泣。
行了,废话不多说,我直接开始肝!!本实验是基于基于头歌实践教学平台的,也就是老师创建的平台,我们学生自己做,然后测试。大家看看shell脚本就行,估计模拟不出来。

二.内容

1)测评创建新用户t1

创建新用户t1,平台测评新用户是否已经创建成功。编辑学员任务文件code.sh和测评代码evaluating.sh(备注:路径请小组自行指定,代码名称不一定完全一致)
学员输入:useradd t1
测试:如果用户创建用户t1成功,输出“创建用户t1成功”。否则输出“创建用户t1失败”。

2)测评以t1用户身份登录。
学员输入:su -c whoami t1
测试:如果用户以t1用户身份登录成功,输出“t1用户登录成功”。否则输出“t1用户登录失败”。

3)测评文件夹创建和文件创建
学员输入:

useradd oldUser
touch oldFile
mkdir oldDir1 oldDir2
touch oldDir2/oldFile2

测试:如果是正确,则通过,否则不通过。

三.实现效果图

1)测评创建新用户t1
在这里插入图片描述

点击测评,成功后:
在这里插入图片描述

2)测评以t1用户身份登录。

在这里插入图片描述

点击测评,成功后:
在这里插入图片描述

3)测评文件夹创建和文件创建
在这里插入图片描述
点击测评,成功后:
在这里插入图片描述

四.代码

1)测评创建新用户t1

用户文件code1.sh

#!/bin/bash

#在以下部分写出完成任务的命令
#***********begin*************#

#************end**************#

测评文件evaluating1.sh

#!/bin/bash

sh code.sh 2> result.txt 2> /dev/null
#执行code.sh,如果有误,则错误重定向到result.tXt文件
testNewName=`tail -n 1 /etc/passwd | cut -d ":" -f 1`
testPwd=`cat result.txt`

if [ $testNewName = "t1" ]; then
	echo "创建t1用户成功"
		
	
else
	echo "创建用户t1失败"
fi

userdel -r t1 2> /dev/null

2)测评以t1用户身份登录。

用户文件code2.sh

#!/bin/bash

#在以下部分写出完成任务的命令
#***********begin*************#

#************end**************#

测评文件evaluating2.sh

#!/bin/bash
sh code2.sh  2> /dev/null 2> result.txt
#执行code.sh,如果有误,则错误重定向到result.tXt文件
testWhoami=`cat result.txt`
if [ $testWhoami = "t1" ]; then
    echo "t1用户登录成功"
else
    echo "t1用户登录成功失败"
fi
userdel -r t1 2> /dev/null

3)测评文件夹创建和文件创建
用户文件code3.sh

#!/bin/bash

#在以下部分写出完成任务的命令
#***********begin*************#

#************end**************#

测评文件evaluating3.sh

#!/bin/bash

useradd oldUser
touch oldFile
mkdir oldDir1 oldDir2
touch oldDir2/oldFile2

sh code3.sh 2> result.txt 2> /dev/null
#执行code.sh,如果有误,则错误重定向到result.tXt文件
oldFile=`ls -l | grep oldFile | cut -d " " -f 3`
oldDir1=`ls -l | grep oldDir1 | cut -d " " -f 3`
oldDir2=`ls -l | grep oldDir2 | cut -d " " -f 3`
oldFile2=`ls -l oldDir2/oldFile2 | cut -d " " -f 3`

if [ $oldFile = oldUser ]; then
	echo "设置oldFile文件所有者成功"
	if [ $oldDir1 = oldUser ]; then
		echo "设置oldDir1目录所有者成功"
		if [ $oldFile2 = oldUser ]; then
			echo "设置oldDir2目录所有者成功"
		else
			echo "设置oldDir2目录所有者失败"
		fi
	else
		echo "设置oldDir1目录所有者失败"
	fi
else
	echo "设置oldFile文件所有者失败"
fi

userdel oldUser
rm -rf oldDir*
rm -fr oldFile

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无言月梧桐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值