• Linux查看History记录加时间戳小技巧 熟悉bash的都一定知道使用history可以输出你曾经输入过的历史命令,例如 [root@servyou_web ~]# history | more 6 ./test.sh 7 vim test.sh 8 ./test.sh 但是这里只显示...
    Linux查看History记录加时间戳小技巧
        熟悉bash的都一定知道使用history可以输出你曾经输入过的历史命令,例如
    [root@servyou_web ~]# history  |  more
        6  ./test.sh 
        7  vim test.sh 
        8  ./test.sh 
     但是这里只显示了命令,并没有显示执行命令的时间,因为保存历史命令的~/.bash_history里并没有保存时间。
    
    通过设置环境变量 export HISTTIMEFORMAT="%F %T `whoami` " 给history加上时间戳
    
    [root@servyou_web ~]# export HISTTIMEFORMAT="%F %T `whoami` "
    [root@servyou_web ~]# history  |  tail
     1014  2011-06-22 19:17:29 root    15  2011-06-22 19:13:02 root ./test.sh 
     1015  2011-06-22 19:17:29 root    16  2011-06-22 19:13:02 root vim test.sh 
     1016  2011-06-22 19:17:29 root    17  2011-06-22 19:13:02 root ./test.sh 
     1017  2011-06-22 19:17:29 root    18  2011-06-22 19:13:02 root vim test.sh 
     1018  2011-06-22 19:17:29 root    19  2011-06-22 19:13:02 root ./test.sh 
     1019  2011-06-22 19:17:29 root    20  2011-06-22 19:13:02 root vim test.sh 
     1020  2011-06-22 19:17:29 root    21  2011-06-22 19:13:02 root ./test.sh 
     1021  2011-06-22 19:17:29 root    22  2011-06-22 19:13:02 root vim test.sh 
     1022  2011-06-22 19:25:22 root    22  2011-06-22 19:13:02 root vim test.sh 
     1023  2011-06-22 19:25:28 root history  |  tail
    
    可以看到,历史命令的时间戳已经加上了,但是.bash_history里并没有加上这个时间戳。其实这个时间记录是保存在当前shell进程内存里的,如果你logout并且重新登录的话会发现你上次登录时执行的那些命令的时间戳都为同一个值,即当时logout时的时间。
    
    尽管如此,对于加上screen的bash来说,这个时间戳仍然可以长时间有效的,毕竟只要你的server不重启,screen就不会退出,因而这些时间就能长时间保留。你也可以使用echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> /etc/profile 然后source一下就OK

    展开全文
  • 替换对应时间戳 :yyyyMMddhhmmss last -t 20190727000000 |more

    替换对应时间戳 :yyyyMMddhhmmss

    last -t 20190727000000 |more

    展开全文
  • 1.查看指定时间的时间戳 查看当前时间 #date +%s 查看指定时间 #date -d 2008-01-01 +%s 1199116800 #date -d 20080101 +%s 1199116800 2.将时间戳转换成date #date -d '1970-01-01 UTC 1199116800 seconds...
    1.查看指定时间的时间戳 

    查看当前时间 
    #date +%s 

    查看指定时间 
    #date -d 2008-01-01 +%s  
    1199116800 
    #date -d 20080101 +%s 
    1199116800 

    2.将时间戳转换成date 
    #date -d '1970-01-01 UTC 1199116800 seconds' 
    2008年 01月 01日 星期二 00:00:00 CST 

    #export LANG=en 
    #date -d '19700101 UTC 1199116800 seconds'  
    Tue Jan  1 00:00:00 CST 2008 


    date -d @1416387827
    展开全文
  • Linux内核中打印日志时间戳 在编译Linux内核,配置时:make menuconfig ---> Kernel hacking --> show timing information on printks 当选中这个选项后,启动内核,会在日志信息前面加...

    (转)https://blog.csdn.net/xiaoaid01/article/details/38655797

    Linux内核中打印日志时间戳

    在编译Linux内核,配置时:make menuconfig ---> Kernel hacking --> show timing information on printks

      当选中这个选项后,启动内核,会在日志信息前面加上时间戳。

    从下面的输出可以看出,时间精确到微秒(us)。

      如下:

    -------------------------------------------------------------------------------------------

    Uncompressing Linux... done, booting the kernel.
    [ 0.000000] Linux version 2.6.35.7+ (bshen@bamboo) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #109 PREEMPT Mon Nov 14 15:11:15 CST 2011
    [ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
    [ 0.000000] CPU: VIVT data cache, VIVT instruction cache

    --------------------------------------------------------------------------------------------

    展开全文
  • 原文地址:http://blog.csdn.net/apple_llb/article/details/50837337Linux时间戳和标准时间的互转在LINUX系统中,有许多场合都使用时间戳的方式表示时间,即从1970年1月1日起至当前的天数或秒数。如/etc/shadow里的...

    原文地址:http://blog.csdn.net/apple_llb/article/details/50837337

    Linux时间戳和标准时间的互转

    在LINUX系统中,有许多场合都使用时间戳的方式表示时间,即从1970年1月1日起至当前的天数或秒数。如/etc/shadow里的密码更改日期和失效日期,还有代理服务器的访问日志对访问时间的记录等等。
     
    下面介绍几种时间戳格式和标准时间格式转换的方法:
    1、分别以标准格式和时间戳来显示当前时间
    [root@365linux ~]# date    
    2010年 08月 10日 星期二 03:39:21 CST   
    [root@365linux ~]# date +%s 
    1281382775
    2、显示指定时间的时间戳
    [root@365linux ~]# date -d "2010-07-20 10:25:30" +%s    
    1279592730
     


    3、将时间戳转换为标准时间格式
    方法1:使用date命令
    [root@365linux ~]# date -d "@1279592730" 
     2010年 07月 20日 星期二 10:25:30 CST
    [root@365linux ~]# date -d "1970-01-01 utc 1279592730 seconds" 
     2010年 07月 20日 星期二 10:25:30 CST
    [root@365linux ~]# date -d "1970-01-01 14781 days" "+%Y/%m/%d %H:%M:%S" 
     2010/06/21 00:00:00
    [root@localhost tmp]#  date -d "@1279592730" 
     Tue Jul 20 10:25:30 CST 2010
     [root@localhost tmp]#  date -d "@1279592730" +"%Y%m%d %H:%M:%S"
     20100720 10:25:30
     [root@localhost tmp]#  date -d "@1279592730" +"%F %H:%M:%S" 
    2010-07-20 10:25:30
     [root@localhost tmp]# date -d "1970-01-01 utc 1279592730 seconds"  
    Tue Jul 20 10:25:30 CST 2010
     [root@localhost tmp]# date -d "1970-01-01 utc 1279592730 seconds" +"%F %H:%M:%S" 2010-07-20 10:25:30
     
     
    方法2:使用awk里的时间函数
    [root@365linux ~]# echo "1279592730" |awk '{print strftime ("%F %T",$0)}' 
     2010-07-20 10:25:30
     
    方法3:使用perl处理
    [root@365linux ~]# perl -e 'print localtime(1279592730)."\n";' 
     Tue Jul 20 10:25:30 2010
     
    补充:
    关于时间格式的解释
     
    UTC  (Universal Time Coordinated,UTC)世界协调时间
    CST  (China Standard Time UTC+8:00)中国沿海时间(北京时间)
    GMT  (Greenwich Mean Time)格林威治标准时间:
     
    系统时区设置:
    [root@365linux ~]# vim /etc/sysconfig/clock
     ZONE="Asia/Shanghai" 
     UTC=true
     ARC=false
    [root@365linux ~]# cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    oracle 中将unix/linux时间戳进行转换
    unix/linux时间戳是按照从格林威治时间1970年1月1日期计算的一个秒数。
     
    unix/linux时间戳转换为标准时间格式(主要是注意时区问题):
    select TO_DATE('19700101','yyyymmdd') + 1235728935/86400 +TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24 from dual 其中1235728935就是unix/linux时间戳,转换完之后就表示为 2009-2-27 18:02:15。
     
    反过来也一样,还是要考虑时区:
    select (to_date('2009-2-27 18:02:15','yyyy-mm-dd hh24:mi:ss') - to_date('1970-1-1','yyyy-mm-dd'))*86400- TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))*3600 from dual

    展开全文
  • 开启内核的打印时间在编译Linux内核:make menuconfig ---> Kernel hacking -->printk and dmesg options--> show timing information on printks 当选中这个选项后,启动内核,会在日志信息...
  • 很多时候我们查看数据库的数据,或者是一些别人系统中的数据需要用时间戳查询,或者查询出来的结果是个时间戳。 还有时候,查询条件需要输入时间戳。 我之前的办法就是用在线工具来完成,后来用mac了,我觉着直接...
  • 大家都知道linux文件系统中的每个文件都有三种时间戳:访问时间(atime——access time):就是上次访问这个文件的时间。改变时间(ctime——change time):就是文件的inode改变的时间(什么是inode?)当你往一个...
  • 一、设置系统环境变量 echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> /etc/profile && source /etc/profile 二、时间参数解析 ...1、在~/.bashrc或etc/profile文件中添加的history相...
  • 获取时间戳,精确到毫秒 .../* 日志时间戳,精确到毫秒 */ char* get_stime(void) { static char timestr[200] ={0}; struct tm * pTempTm; struct timeval time; gettimeofday(&time,NULL); pTempTm = ...
  • 总体来说,时间的格式化在Linux服务器上的使用是比较频繁的,运用得较多的可能是事件日志的记录以及时间的比较等。下面列举自身常用的一些相关时间格式化1、显示当前时间命令:date返回形如:Tue Dec 26 16:11:18 ...
  • dos linux 生成带有时间戳的文件 在生成日志文件的时候,最常见的方式就是在文件的结尾加上时间戳。下面是windows dos方式和Linux方式生成带有时间戳文件的例子: DOS: echo 112233>%date:~0,4%%...
  • 最近由于机房安全规范的要求,需要第三方软件进行系统安全审计,linux操作系统默认有登陆、定时任务等审计,要查看其日志的时候发现时间格式为unix时间戳格式,阅读起来很不方便,便想将其中的时间戳转换成为普通...
  • Linux时间戳、日期转换函数: #include #include #include #include using namespace std; time_t date_to_timestamp(char *date, char *pfmt) { struct tm t; strptime(date, pfmt, &t); time_t
  • 将日期转换为Unix时间戳 将当前时间以Unix时间戳表示: 1date +%s2​输出如下: 1 1361542433 转换指定日期为...
1 2 3 4 5 ... 20
收藏数 29,011
精华内容 11,604