Shell日期时间和时间戳的转换

Gitlab的备份文件是以时间戳显示的,类似:1438624820_gitlab_backup.tar 为了更易于阅读,想把文件名转换成日期格式:2015-08-04_gitlab_backup.tar

所以查找了下Shell里时间转换的方法,记录如下备忘。

Linux下时间转换的一些命令:

  • date +%s   可以得到UNIX的时间戳;
  • 用shell将日期时间与时间戳互转:

      date -d "2015-08-04 00:00:00" +%s     输出:1438617600

  • 而时间戳转换为字符串可以这样做:

      date -d @1438617600  "+%Y-%m-%d"    输出:2015-08-04

  • 如果需要得到指定日期的前后几天:
          seconds=`date -d "2015-08-04 00:00:00" +%s`       #得到时间戳
          seconds_new=`expr $seconds + 86400`                   #加上一天的秒数86400
          date_new=`date -d @$seconds_new "+%Y-%m-%d"`   #获得指定日前加上一天的日前

修改gitlab备份文件名的脚本:

时间: 2024-10-21 05:22:00

Shell日期时间和时间戳的转换的相关文章

格式化时间 与 时间戳的转换

2015-08-06 19:37:58 1 /*! 2 * <格式化时间与时间戳的转换> 3 * 4 * 2015/08/06 by <felove> 5 */ 6 #include <stdio.h> 7 #include <windows.h> 8 #include <time.h> 9 10 void timestampToFormat(time_t& t_1, tm& tm_1); 11 time_t formatToTi

java,时间转时间戳的转换以及各种date格式的转化

package com.henry.test; import java.text.SimpleDateFormat;import java.util.Date;import java.util.HashMap;import java.util.Map; import org.apache.commons.lang.StringUtils; import com.shopin.core.util.HttpClientUtil; public class test { /** * 说明: * @pa

js 时间与时间戳的转换

一:时间转时间戳:javascript获得时间戳的方法有四种,都是通过实例化时间对象 new Date() 来进一步获取当前的时间戳 1.var timestamp1 = Date.parse(new Date()); // 结果:1477808630000 不推荐这种办法,毫秒级别的数值被转化为000 console.log(timestamp1); 2.var timestamp2 = (new Date()).valueOf(); // 结果:1477808630404 通过valueOf

本区区时当前时间与时间戳的转换

/// <summary> /// 本区区时当前时间转换为时间戳 /// </summary> /// <param name="localTime">本区区时当前时间</param> /// <returns>时间戳</returns> public static long ConvertLocalTimeToTimestamp(DateTime localTime) { DateTime greenwishTi

Python/Shell/MySQL时间获取与格式转换

一.说明 时间的获取及时间各格式间的转换是比较常用的操作,但一是多种语言经常容易弄混,二是同一种语言同一个功能可能有不同的实现函数,导致每次处理时间经常要百度所以来记录一下. 另外个人真不喜欢同样功能有多种写法的形式,从理想角度说多种实现方式让不同的人都能以其喜欢的方式进行编写:但实际上当你忘记的时候,你就总要怀疑是不是这么写.可不可以这么写.到底怎么写,然后到网上看又是五花八门的写法,这是个很耗费精力的事情.这也是我不喜欢Ruby的原因. 二.Python时间操作 2.1 获取时间对象 imp

Python3基础知识之日期时间与字符的转换

问题:"猿类"们都知道,编程中都会涉及到日期.时间类型与字符串类型的转换.不同场景,需要将字符串格式转换为日期类型:也需要将日期类型转换为字符串格式. 目标: 学习和积累python中time和datetime 相关知识: 一.time  引用包time import time 1.获取CTS格式: 星期 月 日 时分秒 年 time.ctime()    结果:Wed May 16 15:12:57 2018 2.字符转换为tuple(time obj) date_string =

时间与时间戳的转换

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 时间戳<span>是一种时间表示方式,定义为从</span><a href="http://baike.baidu.com/view/856.htm" target="_blank">格林威治时间</a><span

日期时间和时间戳的相互转换

function formats(time, format){ /*time:2016-10-17*/ /*format:yyyy-MM-dd HH:mm:ss*/ var times = parseInt((new Date(time.replace(new RegExp("-","gm"),"/"))).getTime()) + parseInt(90 * 24 * 60 * 60 * 1000); var t = new Date(time

mysql 将时间戳与日期时间的转换

from_unixtime()是MySQL里的时间函数 mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' )  ->20071120 mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y年%m月%d' )  ->2007年11月20  直接能将mysql的时间戳类型转换成日期格式 UNIX_TIMESTAMP()是与之相对正好相反的时间函数,将日期时间转换为时间戳类型 mysql> SELECT