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 执行脚本
转载于:https://blog.51cto.com/willow/1763691
Linux下Bash编程之算术运算符详解(三)相关推荐
- Linux下服务器基本环境搭建步骤详解(三种软件安装方式)
Linux下服务器基本环境搭建 小伙伴们注意看:下面使用三种方式分别安装JDK.Tomcat.Docker进行演示 操作系统基于CentOs7. 文章目录 Linux下服务器基本环境搭建 前言 一.L ...
- linux下Bash编程until语句及格式化硬盘分区等编写脚本(十)
linux下Bash编程until语句及格式化硬盘分区等编写脚本(十) 1.循环语句结构总结 1.1.while语句当条件满足时,进入循环语句 while 条件; do 语句 done 1.2.unt ...
- linux中的文件夹压缩文件,linux将文件拷贝到目录下Linux下文件的压缩与打包详解...
在Linux中,有很多的压缩命令.利用这些压缩命令,可以方便的从网络上下载大型的文件.同时,我们知道,Linux文件的扩展名是没有特殊意义的,不过,因为Linux下存在着许多压缩命令,所以为了方便记忆 ...
- kill -9 进程号杀不死可以用下面的杀掉 Linux下强制杀死进程的方法详解
常规篇: 首先,用ps查看进程,方法如下: $ ps -ef -- smx 1822 1 0 11:38 ? 00:00:49 gnome-terminal smx 1823 1822 0 11:38 ...
- linux oracle 用户创建,LINUX下Oracle数据库用户创建方法详解
本文实例分析了LINUX下Oracle数据库用户创建方法.分享给大家供大家参考,具体如下: 1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切 ...
- Linux redis安装教程,Linux 下redis5.0.0安装教程详解
Linux redis5.0.0安装,教程如下所示: 1.从官网下载,然后传到服务器,tar -zxvf解压 2.进入redis ? 3.安装:make, (1)若提示:: gcc: Command ...
- linux 更新软件命令 失败,对linux下软件(库)的更新命令详解
在ubuntu服务器下安装包的时候,经常会用到sudo apt-get install 包名 或 sudo pip install 包名,那么两者有什么区别呢? 1.区别 pip用来安装来自PyPI( ...
- linux系统电脑的权限设置,Linux下的文件权限设置修改详解linux操作系统 -电脑资料...
在linux中更改所属用户组是使用chgrp,更改文件拥有者, chown,更改9个属性, chmod这三种常用的问题,在linxu中这三个命令就是对文件目录权限的控制命令了,下面我来介绍它们的用法与 ...
- linux下多线程的创建与等待详解 【转载】
linux下多线程的创建与等待详解 http://blog.chinaunix.net/uid-23842323-id-2656572.html 所有线程都有一个线程号,也就是Thread ID.其类 ...
- linux下tar命令解压缩,tar解压缩命令 Linux下的tar压缩解压缩命令详解
<tar解压缩命令 Linux下的tar压缩解压缩命令详解>由会员分享,可在线阅读,更多相关<tar解压缩命令 Linux下的tar压缩解压缩命令详解(14页珍藏版)>请在人人 ...
最新文章
- 郑冠杰:KDD Cup城市大脑赛题方法总结!
- C语言关闭文件总是错误,C语言程序错误,不能正常读写文件,求解啊
- Linux下如何把时间转成秒数,或把秒数转换成标准时间
- Windows和Linux双系统时间不对的问题。
- 【推荐系统】双塔模型中的负采样
- [leetcode]15.三数之和
- Regarding empty field check in business document save
- 巧妙地在Windows搭建node服务器
- android屏幕基础知识
- Android OpenGLES2.0(十六)——3D模型贴图及光照处理(obj+mtl)
- Unity内存管理你应该知道的底层原理
- nagios整合ganglia实现hadoop、Hbase监控及手机短信报警
- Noiseware 5 降噪滤镜
- python xlwt 写入Excel
- @codeforces - 793G@ Oleg and chess
- cocos2d-x实现透视朦胧光照效果
- 历史最全自然语言处理测评基准分享-数据集、基准(预训练)模型、语料库、排行榜
- JAVA微信公众号后台开发 接口接入
- android后台模拟单机,《仙梦奇缘》安卓手游 手工端 含GM后台 含文字架设教程
- localStroage