为了账号安全,请及时绑定邮箱和手机立即绑定

SHELL DEMO

标签:
Linux

1.打印目前身份,当前所在目录

#!/bin/bash
echo -e "Your user name is $whoami"
echo -e "Your current directory is $pwd"

2.计算指定日期到今天相差几天

#!/bin/bash
#判断是否有传值,若无,提示输入
if [ $1 ]; then
        p_date=$1
else
        until [ $(expr length "$p_date") == 8  ]
        do
        read -p "请输入一个日期,格式为YYYYMMDD:" p_date
        if [ $(expr length "$p_date") != 8 ]; then
                echo "格式输入错误!"
        fi
        done
fi

p_date_s=`date --date="$p_date" +%s`    #指定日期秒数,注意,+%s之间不能有空格
n_date_s=`date +%s`     #现在的日期秒数

declare -i date_total_s=$(($p_date_s-$n_date_s))
declare -i date_total_d=$(($date_total_s/60/60/24))

echo "$p_date距离今天相差$date_total_d天"

3.奇数累加至输入值

#!/bin/bash
#判断是否有传值,若无,提示输入
if [ $1 ]; then
        end_num=$1
else
        until [ -n "$( echo $end_num | sed -n '/^[1-9][0-9]*$/p' )" ]
        do
        read -p "请输入一个数字:" end_num
        #使用[[]]提供另一种思路,注意,该方式正则不要加引号
        if [[ ! $end_num =~ ^[1-9][0-9]*$ ]]; then
                echo "输入值非大于0的数字"
        fi
        done
fi
total=0
for (( num=1; num<=$end_num; num=num+2 ))       #在条件语句中使用le替代<=
do
    total=$(($total+$num))
done

echo "奇数累加值为:$total"

4.输出linux账号,格式为“ The 1 account is “root” ”

#!/bin/bash
cat /etc/passwd | awk 'BEGIN{FS=":"} {print "The " NR "account is \""$1 "\"" } '
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
2
获赞与收藏
0

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消