我尝试在我的bash shell脚本中使用$(date) ,但我希望日期为YYYY-MM-DD格式。 我怎么得到这个?


#1楼

你可以这样做:

$ date +'%Y-%m-%d'

#2楼

在bash(> = 4.2)中,最好使用printf的内置日期格式化程序(bash的一部分)而不是外部date (通常是GNU日期)。

因此:

# put current date as yyyy-mm-dd in $date
# -1 -> explicit current date, bash >=4.3 defaults to current time if not provided
# -2 -> start time for shell
printf -v date '%(%Y-%m-%d)T\n' -1 # put current date as yyyy-mm-dd HH:MM:SS in $date
printf -v date '%(%Y-%m-%d %H:%M:%S)T\n' -1 # to print directly remove -v flag, as such:
printf '%(%Y-%m-%d)T\n' -1
# -> current date printed to terminal

在bash(<4.2)中:

# put current date as yyyy-mm-dd in $date
date=$(date '+%Y-%m-%d')# put current date as yyyy-mm-dd HH:MM:SS in $date
date=$(date '+%Y-%m-%d %H:%M:%S')# print current date directly
echo $(date '+%Y-%m-%d')

可以从日期手册页查看其他可用日期格式(对于外部非bash特定命令):

man date

#3楼

尝试: $(date +%F)


#4楼

你正在寻找ISO 8601标准日期格式,所以如果你有GNU日期(或任何比1988更现代的日期命令),只需: $(date -I)


#5楼

date -d '1 hour ago' '+%Y-%m-%d'

输出将是2015-06-14


#6楼

如果您希望年份采用两种数字格式,例如17而不是2017,请执行以下操作:

DATE=`date +%d-%m-%y`

#7楼

使用最近的Bash(版本≥4.2),您可以使用内置printf和格式修饰符%(strftime_format)T

$ printf '%(%Y-%m-%d)T\n' -1  # Get YYYY-MM-DD (-1 stands for "current time")
2017-11-10
$ printf '%(%F)T\n' -1  # Synonym of the above
2017-11-10
$ printf -v date '%(%F)T' -1  # Capture as var $date

printfdate更快,因为它是一个内置的Bash而date是一个外部命令。

同样, printf -v date ...date=$(printf ...)更快,因为它不需要分支子shell。


#8楼

#!/bin/bash -ex='2018-01-18 10:00:00'
a=$(date -d "$x")
b=$(date -d "$a 10 min" "+%Y-%m-%d %H:%M:%S")
c=$(date -d "$b 10 min" "+%Y-%m-%d %H:%M:%S")
#date -d "$a 30 min" "+%Y-%m-%d %H:%M:%S"echo Entered Date is $x
echo Second Date is $b
echo Third Date is $c

这里x是使用的样本日期然后示例显示数据格式以及获取日期比当前日期多10分钟。


#9楼

每当我有这样的任务时,我最终会回归

$ man strftime

提醒自己所有的可能性。


#10楼

$(date +%F_%H-%M-%S)

可以用来删除之间的冒号(:)

产量

2018-06-20_09-55-58

#11楼

您可以将日期设置为环境变量,以后可以使用它

setenv DATE `date "+%Y-%m-%d"`
echo "----------- ${DATE} -------------"

要么

DATE =`date "+%Y-%m-%d"`
echo "----------- ${DATE} -------------"

#12楼

我使用$(date +"%Y-%m-%d")$(date +"%Y-%m-%d %T")和时间和小时。


#13楼

我使用以下配方:

TODAY=`date -I`
echo $TODAY

查看手册页的date ,还有许多其他有用的选项:

man date

shell脚本中的YYYY-MM-DD格式日期相关推荐

  1. Python写,将输入的yyyy/mm/dd格式的日期显示为yyyy年mm月dd日。

    7.(程序题)编程将输入的yyyy/mm/dd格式的日期显示为yyyy年mm月dd日. str = input("请输入日期:") length=len(str) if str[6 ...

  2. 得到 yyyy/mm/dd 格式时间

    在做项目的时候:很多文件都是按数据添加时间的年/月/日的目录保存 做的时候发现不能直接 DateTime(yyyy-mm-dd).ToString("yyyy/MM/dd")得到 ...

  3. 年月日格式判断-正则表达式 YYYY/MM/DD、YYYY/MM/DD| YY/MM/DD、 ^(^(\d{4}|\d{2})(\-|\/|\.)\d{1,2}\3\d{1,2}$)|(^\d{4}…

    一.简单的日期判断(YYYY/MM/DD): ^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$ 二.演化的日期判断(YYYY/MM/DD| YY/MM/DD): ^(^(\d{4}| ...

  4. 将字符串格式yyyy/MM/dd的字符串转为日期,格式“yyyy-MM-dd“

    将字符串格式yyyy/MM/dd的字符串转为日期,格式"yyyy-MM-dd" public static String strToDateFormat(String date) ...

  5. linux脚本获取日期格式,关于shell脚本中的bash:yyyy-mm-dd格式日期

    我尝试在bash shell脚本中使用$(date),但是我希望日期采用YYYY-MM-DD格式.我怎么得到这个? 在巴什: 从date获取年-月日 DATE=`date +%Y-%m-%d` GET ...

  6. C# 中的年月日时分秒 yyyy MM dd HH mm ss

    C# 中的年月日时分秒 yyyy MM dd HH mm ss 其中大小写含义不同,不能混用 年:yyyy 月:MM 日:dd(1-31) DD(0-365) 时:hh:12小时制 HH:24小时制 ...

  7. 小程序ios时间格式 yyyy/MM/dd

    小程序选用f2-canvas画图表, 横坐标是时间. 实际上线后,发现android上是好的,但是iphone上显示不对,后来发现是时间格式问题,ios不识别yyyy-MM-dd, 要转换成yyyy/ ...

  8. vue3时间格式转换为yyyy/mm/dd,yyyy-MM-dd,yyyy-MM-dd hh:mm:ss,hh:mm,yyyy-MM-ddThh:mm:ss+08:00

    时间格式转换为yyyy/mm/dd export const dateFormat1 = (time = new Date().getTime()) => { //YYYY/MM/DDconst ...

  9. yyyy/MM/dd转换成yyyy-MM-dd,yyyy-MM-dd转换成yyyy/MM/dd你会了吗

    第一种yyyy/MM/dd转换成yyyy-MM-dd 知识点来自官网,可查阅: split() 方法用于把一个字符串分割成字符串数组 join()方法用于把数组中的所有元素放入一个字符串 var my ...

最新文章

  1. 中国×××的“超级无敌”玩法
  2. [zz]Ubuntu10.04源 更新源列表
  3. Linux strace 跟踪进程信息
  4. matlab循环标注,for循环
  5. DAO层、ENTITY层、SERVICE层、CONTROLLER层
  6. 2021年数智化高峰论坛圆满召开
  7. 浏览器渲染过程与性能优化
  8. 郴州:安仁消防工作纳入智慧城市顶层设计
  9. Windows 10 修改域用户密码
  10. python函数的调用顺序,python 函数调用顺序
  11. 什么是无线WIFI空口
  12. 安卓手机如何防盗_安卓手机也能像苹果一样!教你如何查看安卓手机电池损耗...
  13. 数据挖掘如何在互联网金融风险控制中发挥作用
  14. 华为Linux改装windows的弊端,试用华为的linux版电脑,不安装windows,能不能胜任工作? - 区块网...
  15. PHPJavaJavascript通用RSA加密
  16. BERT模型—1.BERT模型架构
  17. X-Frame-Options to sameorgin
  18. android 优化编译,Android-Easy-Compile(安卓编译优化系统)
  19. 用python做网站优点_php和django做网站哪个好
  20. ubuntu下的python的diango环境安装

热门文章

  1. Android登录拦截器实现方式(二)
  2. Fragment中使用viewLifecycleOwner/getActivity/this
  3. 报错android.view.InflateException: Binary XML file line #11: Attempt to invoke virtual method 'boolean
  4. python ui bs_Guibs的Python学习_列表
  5. 【Android基础】从属性动画看代码设计的艺术
  6. Flutter开发之《新锐专家之路:混合开发篇》笔记(55)
  7. (0085)iOS开发之OC与JS交互高级用法(JavaScriptCore)
  8. swift_017(Swift 的枚举)
  9. ubuntu 18.04 64bit下如何安装安卓虚拟机anbox?
  10. 单变量线性回归中的梯度下降法求解代价函数的最小值