shell编程题笔记

1. 要求用户输入一个用户名,查询系统中是否存在该用户,若有打印用户存在,若不存在添加该用户

#!/bin/bash 
check_user() {
	user=`who | grep $1 | wc -l`
	if [ $user -eq 0 ]
	then 
		return 0
	else
		return 1
	fi
}
while true
do
	echo "Input username:"
	read username
	check_user $username
	if [ $? -eq 1 ]
	then 
		echo "user $username online"
	else 
		useradd $username
		echo "user $username added "
	fi
done

2. 用shell编程,将当前路径下的普通文件归档到hello.tar中,并且将归档的过程列出来

#!/bin/bash


flist=`ls`
for file in $flist
do
if [ -f $file ]
	then
	tarlist="$tarlist $file"
fi
done

tar -cvf hello.tar $tarlist

3. 用shell编程,for循环实现1到8的累加

#!/bin/bash

output=0
for val in 1 2 3 4 5 6 7 8
do
	output=`expr $val + $output`
done

echo "The result is $output"

4. 从终端输入你的成绩,必须在0-100之间,否则提示错误你必须输入0-100之间的数字,然后成绩在100-90,输出A,成绩为80-90,输出B,其他成绩都输出C

#!/bin/bash 
while true
do
echo "Please enter your grade:"
read grade
if  [ $grade -gt 100 ] || [ $grade -lt 0 ]
then
	echo "Input Error,Please enter a number between 0-100 "
	continue
else
	tmp_grade=`expr $grade / 10`
	case $tmp_grade in  #注意case这里要加符号$
		10 | 9)
			echo "A"
			;;
		8)
			echo "B"
			;;
		*)
			echo "C"
	esac
fi
done

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

DUANDAUNNN

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

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

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

打赏作者

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

抵扣说明:

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

余额充值