寒假Shell作业_01

题目:

在这里插入图片描述

1.

#!/bin/bash
a=`whoami`   #或者使用命令id-un也可以用来查看当前用户是谁
b=`pwd`
echo 'Your current status is '$a 
echo 'Your current catalogue is '$b 

2.

#!/bin/bash
read -p "请输入你的生日(格式为:MMDD):" birthday #获取用户输入的生日
today=`date +%m%d`  #获取目前的日期
if [ "$birthday" == "$today" ] #判断今天是不是生日
then  
    echo "祝你生日快乐~!"
elif [ "$birthday" -gt "$today" ] #判断生日有没有过去,若还没有过去
then
    year=`date +%Y`
    total_day_s=$((`date --date="$year$birthday" +%s`-`date +%s`)) #先计算距生日还有多少秒 
    total_day=$(($total_day_s/60/60/24+1)) #再换算为天
    echo "你的生日还有:$total_day天"
else  #若生日已经过去
    year=$((`date +%Y`+1))
    total_day_s=$((`date --date="$year$birthday" +%s`-`date +%s`)) #先计算秒 
    total_day=$(($total_day_s/60/60/24+1)) #再换算为天
    echo "你的生日还有:$total_day天"
fi

3.

#!/bin/bash
read -p "Please enter a number:" num #接收用户输入的数并存入变量num中
var=1 
sum=0 #定义累加后的和
while [ $var -le $num ] #设置循环条件
do 
    sum=$[ $sum + $var ]  #也可写成let sum+=var
    let var++
done
echo "sum = "$sum #输出结果



#方法2
#!/bin/bash
#read -p "Please enter a number:" num
#sum=0
#for (( i=0;i<=$num;i++))
#do 
#    sum=$[ $sum + $i ]
#done
#echo $sum

4.

#!/bin/bash
#判断是否存在
if [ ! -e /tmp/nebula ] #若不存在,则创建文件并退出
then
    touch /tmp/nebula && echo "创建成功" && exit
elif [ -f /tmp/nebula ] #若是个文件,则删除它并创建同名目录并退出
then
    rm -rf /tmp/nebula && mkdir /tmp/nebula && echo "创建目录成功" && exit
elif [ -d /tmp/nebula ] #若是个目录,则删除它
then
    rm -rf /tmp/nebula && echo "目录已删除"
fi  

5.

#!/bin/bash
cat /etc/passwd | awk -F ":" '{print "The " NR " account is " $1}'
#-F可以指定分隔符,NR表示当前处理的是第几行

猜你喜欢

转载自blog.csdn.net/kang19970201/article/details/86668725