码迷,mamicode.com
首页 > 系统相关 > 详细

Linux下Bash编程之算术运算符详解(三)

时间:2016-04-14 12:23:27      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:linux下bash编程之算术运算符详解(三)

Linux下Bash编程之算术运算符详解(三)

shell算术运算表示如下:

1、let 算术运算表达式

let C=$A+$B

2、$[算术运算表达式]

C=$[$A+$B]

3、$((算术运算表达式))

C=$(($A+$B))

4、expr 各操作数及运算符之间要有空格,且要使用命令引用

C=`expr $A + $B`

举例说明:

1.指定一个用户,判断用户密码剩余使用期限是否已经小于警告期限;

 如果小于警告期限,则显示“Password will expire --> Warning”;否则,就显示“OK”

提示:最长使用期限减去已经使用的天数即为剩余使用期限;

vim shadowdate.sh 创建一个脚本文件并添加以下内容:

#!/bin/bash

USERNAME=willow   指定一个用户,并设置变量

RECE=`grep "\<$USERNAME\>" /etc/shadow | cut -d: -f3` 最近修改密码时间

LONG=`grep "\<$USERNAME\>" /etc/shadow | cut -d: -f5` 最长密码使用期限

EXPI=`grep "\<$USERNAME\>" /etc/shadow | cut -d: -f6`  警告期限

CURR=`date +%s` 从1970/01/01到今天,共多少秒

let TODAY=$CURR/86400  从1970/01/01到今天,共多少天


#let  USERDAYS=$TODAY-$RECE  注释:密码已使用多少天 其中之一表法方法

#USERDAYS=$[$TODAY-$RECE]    注释:密码已使用多少天 其中之二表法方法

USERDAYS=$(($TODAY-$RECE))    密码已使用多少天    其中之三表法方法


LEFT=`expr $LONG - $USERDAYS`  剩余使用期限


if [ $LEFT -lt $EXPI ]; then

  echo "Password will expire --> Warning"

else

  echo "Password is OK"

fi

技术分享

chmod a+x shadowdate.sh  授于执行权限

./shadowdate.sh       执行脚本

本文出自 “夏维柳” 博客,请务必保留此出处http://willow.blog.51cto.com/6574604/1763691

Linux下Bash编程之算术运算符详解(三)

标签:linux下bash编程之算术运算符详解(三)

原文地址:http://willow.blog.51cto.com/6574604/1763691

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!