Linux 日期和时间操作详解

Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟两种。系统时间是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的那个主板硬件时钟,当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。

如何查看系统的日期和时间?
$ date
Tue Oct 16 11:18:32 CST 2012
date支持格式化输出,如
$ date +”%r %n%a %b %d, %Y”
11:27:14 AM
Tue Oct 16, 2012

显示指定的日期与时间
$ date -d “+1 month”
Fri Nov 16 11:31:10 CST 2012

显示日历
$ cal
October 2012
Su Mo Tu We Th Fr Sa
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

如何修改系统日期和时间?
使用date命令的-s参数.
#date -s 12/4/2011 #date -s 14:15:00

date -s ’2011/12/4 14:15:00′

如何查看硬件时钟?
# hwclock –show
Tue 16 Oct 2012 09:19:57 PM CST -0.844514 seconds

如何设置硬件时钟?
# hwclock –set –date=”09/17/2003 13:26:00″
# hwclock –hctosys //硬件时钟与系统时钟同步
# hwclock –systohc //系统时钟与硬件时钟同步
硬件时钟也可以通过clock命令来查看和设置.
时区
UTC Universal Time Coordinated,世界标准时间
GMT Greenwich Mean Time,格林尼治时间
CST China standard Time ,中国标准时间
比如设置设置时区为CST
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
NTP
Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正,且可介由加密确认的方式来防止恶毒的协议攻击。
官方网站: http://www.pool.ntp.org/en/
可使用ntpdate同步,服务器可加crontab
# ntpdate cn.pool.ntp.org

使用time命令获取命令执行时间
$ time ls -Rl dir/*
[...]
real 0m22.156s
user 0m1.652s
sys 0m4.772sLinux 文件的时间概念
(1) modification time (mtime,修改时间),是文件内容修改的时间,用命令ls -l默认显示的就是这个时间.
(2)status time (ctime,状态时间):当一个文件的状态改变时,这个时间就会改变,例如更改了文件的权限与属性等,它就会改变。
(3)access time (atime,访问时间):当读取文件内容时,就会更改这个时间,例如使用cat 去读取/etc/man.config,那么该文件的atime就会改变。
可使用 ls -l –time=atime –full-time 和 ls -l –time=ctime –full-time 来查看.另外可以用stat命令来查看.
$ stat README.md
File: `README.md’
Size: 25 Blocks: 8 IO Block: 4096 regular file
Device: 809h/2057d Inode: 2755432 Links: 1
Access: (0664/-rw-rw-r–) Uid: ( 1000/ diglike) Gid: ( 1000/ diglike)
Access: 2012-09-21 15:36:42.238294913 +0800
Modify: 2012-09-21 15:35:31.626295155 +0800
Change: 2012-09-21 15:35:31.750295154 +0800
Birth: -
$ ls –full-time README.md
-rw-rw-r– 1 diglike diglike 25 2012-09-21 15:35:31.626295155 +0800 README.md
$ ls –time=atime –full-time README.md
-rw-rw-r– 1 diglike diglike 25 2012-09-21 15:36:42.238294913 +0800 README.md
$ ls –time=ctime –full-time README.md
-rw-rw-r– 1 diglike diglike 25 2012-09-21 15:35:31.750295154 +0800 README.md

如何修改Linux文件的访问时间和修改时间?
可以使用touch命令来修改.
-a 参数只修改atime
-m 参数只修改mtime
-c 参数不创建文件
-t [[CC]YY]MMDDhhmm[.ss] 修改为指定时间
如:
touch -t 1210011224.30 abc
touch -d “5 days ago” abc
定制ls输出的日期和时间格式
每个Linux系统可能不一样,由TIME_STYLE 环境变量控制.以下是Ubuntu 12.04的默认输出格式:
$ll README.md
-rw-rw-r– 1 diglike diglike 25 Sep 21 15:35 README.md
我修改后显示为
$ ll README.md
-rw-rw-r– 1 diglike diglike 25 2012-09-21 15:35 README.md
因为我在.bashrc 中添加了export TIME_STYLE=long-iso
还可以定制如
$ export TIME_STYLE="+%Y-%m-%d %H:%M:%S %z"

(0)

相关推荐

  • 让 history 命令显示日期和时间方法详解

    我们都对 history 命令很熟悉.它将终端上 bash 执行过的所有命令存储到 .bash_history 文件中,来帮助我们复查用户之前执行过的命令. 默认情况下 history 命令直接显示用 ...

  • Linux 下 Make 命令实例详解

    Linux 下 Make 命令实例详解 Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问 ...

  • 通过 FSCK 命令检查 Linux 文件系统中的错误详解

    fsck命令被用于检查并且试图修复文件系统中的错误.当文件系统发生错误四化,可用fsck指令尝试加以修复. FSCK是一个很重要的Linux/Unix工具,它用于检测并修复文件系统中的错误.它类似于W ...

  • 天书奇谈转生操作详解

    8000万玩家最爱.新生代Q版神幻网页游戏<天书奇谈>"仙境的召唤"已经进入倒计时状态!此刻的你,是否也和其他天书迷一起,正在等着仙境的唯美降临,期待着修仙之路的唯美蜕 ...

  • linux 防御SYN攻击步骤详解

    一.默认syn配置 sysctl -a | grep _syn net.ipv4.tcp_max_syn_backlog = 1024 net.ipv4.tcp_syncookies = 1 net. ...

  • if函数嵌套countif、sumif函数实例操作详解

    excel中if函数嵌套countif函数实例操作详解,需要了解if函数.countif函数.sumif函数字符串引用方式,isblank函数 操作方法 01 用扫描枪连接excel后将自动将货物名称 ...

  • Win7任务栏时间显示设置详解

    本文将详解Win7任务栏时间显示设置,包括:设置长日期、设置短日期、设置超短日期、改用12小时制、添加个性化文字等。首先要了解一下时间与日期的设置: 【设置长日期】 任务栏竖立时由于2011-10-2 ...

  • linux系统下ls命令详解

    ls是linux操作系统下的一个重要命令,详细解释一下. 操作方法 01 首先打开windows中的vmware 虚拟机,并启动ubuntu操作系统,通过快捷键或者其他方式打开shell. 02 在终 ...

  • linux命令之gzip命令详解和使用实例

    gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。 1.命令格式 ...