如何使用命令行界面获取日期和时间?

Sha*_*tam 155 command-line

如何在终端中获取当前日期/时间。我主要以文本(控制台)模式启动我的系统,并且需要命令来了解当前日期/时间。

Car*_*l H 253

date命令将显示日期和时间。

man date如果您想要标准输出以外的其他内容,将向您展示如何将输出控制为您需要的任何格式。例如:

date "+%H:%M:%S   %d/%m/%y"
Run Code Online (Sandbox Code Playgroud)

将按格式输出日期和时间 14:09:22 09/06/2015

可以在Ubuntu手册页上找到更易于阅读的手册页版本

  • +1 只是为了说“男人约会” (12认同)
  • 我怎样才能得到时区差异? (2认同)

drP*_*ete 21

时间作为命令行提示:

PS1="\@ \w$bk"
Run Code Online (Sandbox Code Playgroud)

看起来像:11:41 AM ~

一个小爱好者,括在括号中:

PS1="[ \@ \w$bk ]"
Run Code Online (Sandbox Code Playgroud)

看起来像:[ 11:36 AM ~ ]

添加用户和本地主机以及时间,都在括号内:

PS1="[ \u on \h \@ \w$bk ]"
Run Code Online (Sandbox Code Playgroud)

看起来像:[ DrPete on LittleSorrel 10:34 AM ~ ]

将提示重置为默认值 #: PS1="# "

要使提示永久可用,请添加您选择的提示行,即,

export PS1="\@ \w$bk "
Run Code Online (Sandbox Code Playgroud)

到 ~/.profile 。

忍不住,我们现在正在滚动...添加颜色,在.profile 中定义它们以使其更容易设置:

 # Install GNU coreutils
    bk="\[\033[0;38m\]" #means no background and white lines
    txtBlue="\[\033[0;34m\]"   #letter color blue
    txtRed="\[\033[0;31m\]"    #letter color red
    txtCyan="\[\033[1;36m\]"   #letter color cyan
    txtWhite="\[\033[1;37m\]"  #letter color white
    txtYellow="\[\033[1;33m\]" #letter color yellow
Run Code Online (Sandbox Code Playgroud)

那么一个超花哨的彩色提示将是:

PS1="[ $txtYellow\u on $txtCyan\h $txtRed\@ $txtWhite\w$bk ]"
Run Code Online (Sandbox Code Playgroud)


May*_*hux 19

有一个用于时间和日期的命令列表:

  1. 命令 date

    $ date 
    Tue Jun  9 18:04:30 EEST 2015
    
    Run Code Online (Sandbox Code Playgroud)
  2. 该命令zdump用于回显指定时区的时间。

    $ zdump EEST
    EEST  Tue Jun  9 15:05:17 2015 EEST
    
    Run Code Online (Sandbox Code Playgroud)
  3. 时钟

    $ sudo hwclock
    Tue 09 Jun 2015 06:05:55 PM EEST  -0.656710 seconds
    
    Run Code Online (Sandbox Code Playgroud)
  4. 时钟但需要安装 xview-clients

    sudo apt-get install xview-clients
    
    Run Code Online (Sandbox Code Playgroud)
  5. 使用ntpdate命令。ntpdate用于设置系统时间,但使用 withoutsudo只会打印时间和日期。

    $ ntpdate
    
    26 Jun 10:48:34 ntpdate[4748]: no servers can be used, exiting
    
    Run Code Online (Sandbox Code Playgroud)


Mik*_*ela 12

使用 Ubuntu 15.04 (systemd) 还timedatectl可以显示时间并允许您在man timedatectl.

没有参数它给出

% timedatectl
警告:忽略 TZ 变量。仅读取系统的时区设置。

      当地时间:ke 2015-06-10 10:31:59 EEST
  世界时:ke 2015-06-10 07:31:59 UTC
        RTC时间:ke 2015-06-10 07:31:59
       时区:欧洲/赫尔辛基(EEST,+0300)
     NTP 已启用:是
NTP 同步:是
 本地 TZ 中的 RTC:否
      DST 活动:是
 上次 DST 更改:DST 开始于
                  苏 2015-03-29 02:59:59 欧洲东部时间
                  苏 2015-03-29 04:00:00 EEST
 下一次 DST 更改:DST 结束(时钟向后跳一小时)于
                  苏 2015-10-25 03:59:59 EEST
                  苏 2015-10-25 03:00:00 欧洲东部时间

我使用的另一个不错的功能是timedatectl set-ntp true激活systemd-timesyncd内置 SNTP(简单网络时间协议)客户端,它将您的时钟与远程服务器同步。


Rma*_*ano 8

尽管这里的所有答案都是正确的,但您需要date手动使用该命令随时查看时间,并且输出将与您的命令的正常输出混合。这基本上没问题,但有时不切实际。

您可以将 date 命令添加到您的提示中,该命令将在每次 shell 准备好执行该命令时显示一个(固定的)时钟,或者您可以使用具有状态行的终端多路复用器之一。我最喜欢的一个(虽然我承认最老的一个)是 GNU screen。

在控制台或终端中,比如 via ssh,如果你使用screen你可以做无数不同的事情screen当我只有一个文本终端时,我曾经认为工作是不可避免的)你可以选择---这是通常在默认配置中 --- 在状态行中有一个时钟:

终端上的屏幕

(截图是在虚拟终端上,但在虚拟控制台上是一样的)。


JoK*_*KeR 5

还将输出日期和时间:

sudo hwclock
Run Code Online (Sandbox Code Playgroud)

更详细:

man hwclock
Run Code Online (Sandbox Code Playgroud)