实验6:shell编程

1、查看当前系统用户Shell定义的环境变量,并使用命令搜索HOME变量的值;

 

 


2、测试主进程变量和子进程变量区别;

 


3、设计一个Shell程序,当程序运行时要求从键盘读入一个字符串(如:hadoop)并将其赋值给user变量,程序输出:“Current user is :hadoop”。其中输出字符串“hadoop”是变量user中的内容。

 


4、userurl_20150911文件是用户上网记录,每一行代表用户的一条浏览记录,同一个用户可能有多条浏览记录。试设计一个shell程序命名为userAnalysis.sh用来计算该文件中任一用户浏览记录总条数。

要求:1、命令行运行程序时传递手机号码参数

           2、 命令运行时输出查找用户浏览记录总条数

#!/bin/bash
id="86"$1
cut -f 3 userurl_20150911 | grep $id | wc -l

 


5、编写shell脚本score。根据输入的学生成绩判断等级。当成绩≥90时为A级;80≤成绩<90时为B级;70≤成绩<80时为C级;60≤成绩<70时为D级;成绩<60时为E级。

 

#!/bin/bash
echo "Please enter a number"
read num
if [ -z $num ]                 
then
echo "you enter nothing,please enter a number"
read num
else
        
                if [ $num -ge 90 ]    
                then
                echo "The grade is A"
                else
                        if [ $num -ge 80 ]     
                        then
                        echo "The grade is B"
                        else
                                if [ $num -ge 70 ]     
                                then
                                echo "The grade is C"
                                else
                                        if [ $num -ge 60 ]    
                                        then
                                        echo "The grade is D"
                                        else
                                        echo "The grade is E"    
                                        fi
                                fi
                        fi
                fi
        
fi

 


6、编写一个程序,它的作用是:

a、 创建1000个目录,目录名依次为1,2,3,……,1000;

b、 在每个目录下创建一个文件,文件名与目录名相同;

c、 向文件中写入数值,文件名为1的文件写入的数值为1,文件名为2的写入的数值为2,以此类推.

 

 

 

#!/bin/bash
for((i=1;i<=1000;i++))
do
mkdir $i                     
done
echo "mkdir success!"
sleep 5
for ((i=1; i<=1000; i++));
do
   cd $i
   touch $i.txt
   cd $i.txt
   echo "$i"
done                                                          
                                                                                          

7、编写shell脚本,其功能包括:

a、根据用户输入的数值输出2020年的月历,用户输入“Q”退出查询;

b、用户可连续查看多个月份的月历;

c、月历输出及匹配部分用函数实现。

 

 

#!/bin/bash
show_date()
{
    cal $1 $2
}

while true
do
    echo "请输入2020年的月份"
    year=2020
    read month
    if [ $month == "Q" ];
    then    
        break;
    fi
    show_date $month $year
    
done

8、编写一个shell脚本,它的作用是:

a、 创建31个目录,目录名依次为url_20180301, url_20180302, url_20180303,……,url_20180331;

b、利用创建好的目录名作为for语句循环变量的取值集,将这些目录名串在一起存放在变量InputPath中(目录之间以空格隔开,最后一个目录名后没有空格。)

 

 

#!/bin/bash
t="url20180301"
for((i=2;i<=30;i++))
do
if [ $i -lt 10 ];then
	mkdir url2018030$l
	a="url2018030$i"
	s="$a "
	t="$t $s"
else 
	mkdir url2018030$l
	a="url201803$i"
	s="$a "
	t="$t $s"
fi
done
mkdir url201803$l
s="url201803$l"
t="$t $s"
echo $t

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值