使用date命令转换基础时间秒为年月日:
命令为:
date -d @1281161747
注意一定不要忘记符号“@”
#date 获取当前时间
#date -d "-1 week" +%Y%m%d 获取上周日期(day,month,year,hour)
#date --date="-24 hour" +%Y%m%d 同上
date_now=`date +%s` shell脚本里面赋给变量值
%% 输出%符号
%a 当前域的星期缩写 (Sun..Sat)
%A 当前域的星期全写 (Sunday..Saturday)
%b 当前域的月份缩写(Jan..Dec)
%B 当前域的月份全称 (January..December)
%c 当前域的默认时间格式 (Sat Nov 04 12:02:33 EST 1989)
%C n百年 [00-99]
%d 两位的天 (01..31)
%D 短时间格式 (mm/dd/yy)
%e 短格式天 ( 1..31)
%F 文件时间格式 same as %Y-%m-%d
%h same as %b
%H 24小时制的小时 (00..23)
%I 12小时制的小时 (01..12)
%j 一年中的第几天 (001..366)
%k 短格式24小时制的小时 ( 0..23)
%l 短格式12小时制的小时 ( 1..12)
%m 双位月份 (01..12)
%M 双位分钟 (00..59)
%n 换行
%N 十亿分之一秒(000000000..999999999)
%p 大写的当前域的上下午指示 (blank in many locales)
%P 小写的当前域的上下午指示 (blank in many locales)
%r 12小时制的时间表示(时:分:秒,双位) time, 12-hour (hh:mm:ss [AP]M)
%R 24小时制的时间表示 (时:分,双位)time, 24-hour (hh:mm)
%s 自基础时间 1970-01-01 00:00:00 到当前时刻的秒数(a GNU extension)
%S 双位秒 second (00..60);
%t 横向制表位(tab)
%T 24小时制时间表示(hh:mm:ss)
%u 数字表示的星期(从星期一开始 1-7)
%U 一年中的第几周星期天为开始 (00..53)
%V 一年中的第几周星期一为开始 (01..53)
%w 一周中的第几天 星期天为开始 (0..6)
%W 一年中的第几周星期一为开始 (00..53)
%x 本地日期格式 (mm/dd/yy)
%X 本地时间格式 (%H:%M:%S)
%y 两位的年(00..99)
%Y 年 (1970…)
例子:编写shell脚本计算离自己生日还有多少天?
read -p "Input your birthday(YYYYmmdd):" date1
m=`date --date="$date1" +%m` #得到生日的月
d=`date --date="$date1" +%d` #得到生日的日
date_now=`date +%s` #得到当前时间的秒值
y=`date +%Y` #得到当前时间的年
birth=`date --date="$y$m$d" +%s` #得到今年的生日日期的秒值
internal=$(($birth-$date_now)) #计算今日到生日日期的间隔时间
if [ "$internal" -lt "0" ]; then #判断今天的生日是否已过
birth=`date --date="$(($y+1))$m$d" +%s` #得到明天的生日日期秒值
internal=$(($birth-$date_now)) #计算今天到下一个生日的间隔时间
fi
echo "There is :$((einternal/60/60/24)) days." #输出结果,秒换算为天
分享到:
相关推荐
### Linux下的Date命令详解:格式化输出与时间设置 #### 一、Date命令概述 `date` 命令在Linux系统中是一个非常基础且重要的工具,主要用于...对于Linux用户来说,熟练掌握 `date` 命令的使用方法是非常有必要的。
根据给定的Linux shell脚本,我们可以深入探讨与身份证号码验证相关的知识点,特别是针对中国身份证号码的15位和18位格式的处理方法。以下是对脚本中关键部分的详细解析: ### Linux Shell编程验证身份证号码 ####...
可以当查询手册使用,因为是自己一点一点积累的,所以多要些资源分 一、各种循环命令 3 1. #WHILE循环用法 3 2. #UNTIL循环用法 3 3. #FOR循环用法: 3 二、各种条件语句 4 1. #IF语句用法 4 ...4. #DATE命令的使用 12
本教程将介绍三种不同的方法来使用Linux Shell发送邮件。 ### 方法一:简单邮件发送 最基础的发送邮件方式是使用内置的`mail`命令。下面的命令行示例展示了如何发送一个简单的文本邮件: ```bash echo 'hello ...
这部分可能会讲解date命令的用法,以及如何在脚本中进行日期和时间的计算,例如获取当前时间、比较日期、计算两个日期之间的差值等。 四、数值计算: 虽然Shell主要处理文本,但它也支持一些基本的数值计算。这部分...
在本文中,我们将深入探讨 `date` 命令的使用方法,并通过实际示例来帮助理解其功能。 #### 二、基本语法 `date` 命令的基本语法如下: ``` date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=...
1. **熟练掌握 Shell 程序的编辑、运行与调试方法**:这包括如何使用文本编辑器(如 Vim 或 Emacs)来创建脚本文件,如何使用命令行来执行脚本,以及如何使用调试工具来定位和解决问题。 2. **实现所有必需的功能**...
本文将为大家详细介绍 Linux Shell 命令的用法,并且总结了一些常用的方法。 一、日期命令 在 Linux 中,日期命令是非常常用的,date 命令可以用来显示当前的日期和时间。例如,使用 date +%Y-%m-%d 可以显示当前...
11.1.12 使用k的其他sort方法 108 11.1.13 使用k做分类键排序 108 11.1.14 指定sort序列 108 11.1.15 pos用法 108 11.1.16 使用head和tail将输出分类 109 11.1.17 awk使用sort输出结果 109 11.1.18 将两个分类文件...
Linux Shell是Linux操作系统...以上只是Linux Shell常用技巧的一部分,实际使用中还有更多高级特性和用法,如进程间通信、陷阱处理、正则表达式等。通过不断学习和实践,用户可以更好地掌握Shell,提升Linux操作效率。
11.1.12 使用k的其他sort方法 108 11.1.13 使用k做分类键排序 108 11.1.14 指定sort序列 108 11.1.15 pos用法 108 11.1.16 使用head和tail将输出分类 109 11.1.17 awk使用sort输出结果 109 11.1.18 将两个分类文件...
### Linux Shell 简明教程知识点汇总 #### 一、Linux操作系统与Shell脚本编程基础 **Shell**作为Linux操作系统的交互界面,是用户与操作系统之间的桥梁。掌握Shell的基础知识和脚本编程技巧,能够极大地提高系统...
linux shell编程 教程大全 目 录 译者序 前言 第一部分 shell 第1章 文件安全与权限 1 1.1 文件 1 1.2 文件类型 2 1.3 权限 2 1.4 改变权限位 4 1.4.1 符号模式 4 1.4.2 chmod命令举例 5 1.4.3 绝对模式 5 1.4.4 ...
### Linux Shell 脚本学习知识点 #### 一、时间日期相关操作 1. **获取当前日期时间**:`$date` - 直接执行`date`命令即可获得当前系统...这些知识点对于初学者来说非常关键,能够帮助快速掌握Shell脚本的基本用法。
2. **Shell脚本调试与排错**:学习如何找出并修复脚本中的错误,包括使用调试工具和日志记录等方法。 3. **Shell脚本的公共函数库**:了解如何利用现有的公共函数库来加速开发,以及如何创建自己的函数库。 通过这...
本次实验旨在让学生深入了解Linux环境下的基本操作与命令使用方法,具体目标包括: 1. **理解Linux命令的基本格式**:这有助于学生更好地组织和执行命令。 2. **熟悉Linux系统的连接方式**:包括通过网络进行远程...
本实验报告的目的是让学生了解 Linux Shell 的编程特点,掌握 Shell 程序设计的基础知识,并且能够基本掌握编写 Shell 程序的步骤、方法和技巧。 一、实验目的 通过本实验,学生应能够了解常用 Shell 的编程特点,...
### Linux Shell Scripting知识点 #### 一、Linux Shell 脚本编程概述 - **定义与作用**:Linux Shell 脚本是一种自动化工具,它允许用户通过一系列命令来执行复杂的任务。这些命令通常用于系统管理任务,如备份、...
本文将介绍三种在Shell中生成随机数的方法:基于日期的随机数、使用内置的 `$RANDOM` 变量以及利用 `/dev/random` 和 `/dev/urandom` 设备。 1. **基于日期的随机数**: - 使用`date`命令可以获取当前时间的秒数...