zoukankan      html  css  js  c++  java
  • CentOS下date命令

    显示系统日期

    要显示系统日期,只要输入:

    $ date
    Thu Dec 5 22:55:41 WIB 2013

    格式化显示日期

    日期有很多格式。如果你不喜欢默认的格式,你可以换一种格式。你可能会想"为什么我需要改变格式? 默认的输出对我足够了。"

    是的,你说的对,但是当你在编程时,默认输出或许无法满足你的需求,因此需要一些自定义输出。

    RFC 2822 的日期与时间输出格式

    $ date -R
    Thu, 05 Dec 2013 23:40:53 +0700

    RFC 2822 的格式像这样 : 星期, 日-月-年, 小时:分钟:秒 时区

    时区 +0700 等同于 GMT +7。

    使用格式化选项

    要自定义你的日期格式, 使用加号 (+)

    $ date +”Day : %d Month : %m Year : %Y”
    Day: 05 Month: 12 Year: 2013

           % : 印出 %
    %n : 下一行
    %t : 跳格
    %H : 小时(00..23)
    %I : 小时(01..12)
    %k : 小时(0..23)
    %l : 小时(1..12)
    %M : 分钟(00..59)
    %p : 显示本地 AM 或 PM
    %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
    %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
    %S : 秒(00..61)
    %T : 直接显示时间 (24 小时制)
    %X : 相当于 %H:%M:%S
    %Z : 显示时区

    日期方面 :
    %a : 星期几 (Sun..Sat)
    %A : 星期几 (Sunday..Saturday)
    %b : 月份 (Jan..Dec)
    %B : 月份 (January..December)
    %c : 直接显示日期与时间
    %d : 日 (01..31)
    %D : 直接显示日期 (mm/dd/yy)
    %h : 同 %b
    %j : 一年中的第几天 (001..366)
    %m : 月份 (01..12)
    %U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
    %w : 一周中的第几天 (0..6)
    %W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
    %x : 直接显示日期 (mm/dd/yy)
    %y : 年份的最后两位数字 (00.99)
    %Y : 完整年份 (0000..9999)

    设置系统日期和时间

    通常地,你希望你的系统日期和时间是自动设置的。如果由于一些原因,你想要手动修改它,我们可以使用这个命令。

    # date –set=”20140125 09:17:00”

    这会设置你当前的系统日期和时间到一月 25, 2014 and 09:17:00 AM。请注意,你必须拥有root特权来这么做。不然你会得到这样一个错误。

    date: cannot set date: Operation not permitted
    Sat Jan 25 09:17:00 WIB 2014

    #date -s 修改时间,看下面的例子#date -s 05/16/2010(将系统日期设定为2010年05月16日)

    #date -s 12:40:22(将系统时间设定为下午12:40:22)修改完后执行:clock -w ,强制将时间写入COMS!修改时区:(将Asia/shanghai-上海时区写入当前时区)

    #cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 提示是否覆盖,输入Y回车,然后#date 查看时区和时间(CST,中国时区)

     

    重置你的时间

    如果你希望重置你的系统日期和时间到原始值,你可以用这个技巧。

    # hwclock
    Fri 06 Dec 2013 03:44:10 AM WIB -0.314082 seconds

    这回设置你的系统日期和时间到hwclock命令的输出的样子。

    在脚本中使用date命令

    还记得我之前说为什么你需要改变date的输出么?一个答案是你或许需要编程。让我们看下bash脚本下的一个例子。

    $ vi display.date
    
    #! /bin/bash
    DATETIME=$(date +”DATE: %a %b-%d-%Y TIME: %T WEEK NUMBER: %W”)
    echo $DATETIME

    保存并运行它:

    $ ./display.date
    DATE : Fri Dec-06-2013 TIME: 03:08:19 WEEK Number :40

    如果你发现权限拒绝错误信息,输入:

    $ chmod 755 display.date

    在备份流程中使用date

    另外一个例子是子你备份流程中使用date。

    $ date +%F
    2013-12-06
    
    $ tar zcfv /daily_backup/backup-`date +%F`.tar.gz /home/pungki/Documents

    它会压缩文件夹/home/pungki/Documents到一个位于/daily_backup folder的文件backup-2013-12-06.tar.gz中。(译注:通过“` 命令 `”来在命令行内嵌其它命令,这个字符不是单引号,而是和波浪号~同一个键位的那个符号。)

    总结

    date可能被认为在某些方面不重要。但是date扮演了一个重要的角色。要想知道关于date命令更多的细节,在你的控制台下输入man date访问man页面。

  • 相关阅读:
    泛微云桥e-Bridge 目录遍历,任意文件读取
    (CVE-2020-8209)XenMobile-控制台存在任意文件读取漏洞
    selenium 使用初
    将HTML文件转换为MD文件
    Python对word文档进行操作
    使用java安装jar包出错,提示不是有效的JDK java主目录
    Windows server 2012安装VM tools异常解决办法
    ifconfig 命令,改变主机名,改DNS hosts、关闭selinux firewalld netfilter 、防火墙iptables规则
    iostat iotop 查看硬盘的读写、 free 查看内存的命令 、netstat 命令查看网络、tcpdump 命令
    使用w uptime vmstat top sar nload 等命令查看系统负载
  • 原文地址:https://www.cnblogs.com/wych/p/4180382.html
Copyright © 2011-2022 走看看