¿Cómo obtener la fecha y la hora usando la interfaz de línea de comando?

78

¿Cómo puedo obtener la fecha / hora actual en la terminal? Principalmente inicio mi sistema en modo de texto (consola) y necesito el comando para conocer la fecha / hora actual.

    
pregunta Sharad Gautam 09.06.2015 - 14:56

8 respuestas

132

El comando date le mostrará la fecha y la hora.

man date le mostrará cómo controlar la salida al formato que necesite, si desea algo diferente a la salida estándar. Por ejemplo:

date "+%H:%M:%S   %d/%m/%y"

mostrará la fecha y la hora en el formato 14:09:22 09/06/2015

Se puede encontrar una versión más fácil de leer de la página del manual en Ubuntu Man Pages

    
respondido por el Carl H 09.06.2015 - 15:00
17

Tiempo como el indicador de línea de comando:

PS1="\@ \w$bk"

Parece: 11:41 AM ~

Un poco más elegante, encerrado entre corchetes:

PS1="[ \@ \w$bk ]"

Parece: [11:36 AM ~]

Agregue el usuario y el servidor local con la hora, todo entre paréntesis:

PS1="[ \u on \h \@ \w$bk ]"

Parece: [DrPete en LittleSorrel 10:34 AM ~]

Restablecer aviso a valor predeterminado #: PS1="# "

Para que el mensaje permanentemente esté disponible, agregue la línea de solicitud de su elección, es decir,

export PS1="\@ \w$bk "

a ~ / .profile.

No podemos evitarlo, estamos trabajando ahora ... agregue colores, defínalos en .profile para que sean más fáciles de configurar:

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

Luego, un mensaje de color superfancia sería:

PS1="[ $txtYellow\u on $txtCyan\h $txtRed\@ $txtWhite\w$bk ]"
    
respondido por el drPete 09.06.2015 - 17:40
13

Hay una lista de comandos utilizada para la hora y la fecha:

  1. El comando date

    $ date 
    Tue Jun  9 18:04:30 EEST 2015
    
  2. El comando zdump utilizado para hacer eco de la hora en un huso horario especificado.

    $ zdump EEST
    EEST  Tue Jun  9 15:05:17 2015 EEST
    
  3. hwclock

    $ sudo hwclock
    Tue 09 Jun 2015 06:05:55 PM EEST  -0.656710 seconds
    
  4. reloj, pero necesita instalar xview-clients

    sudo apt-get install xview-clients
    
  5. utilizando el comando ntpdate . ntpdate se usa para configurar el tiempo del sistema, pero al usar sin sudo simplemente se imprimirá la hora y la fecha.

    $ ntpdate
    
    26 Jun 10:48:34 ntpdate[4748]: no servers can be used, exiting
    
respondido por el Maythux 09.06.2015 - 17:07
8

Aunque todas las respuestas aquí son correctas, debe usar el comando date de forma manual para ver la hora siempre que lo desee, y la salida se mezclará con la salida normal de su comando. Esto está generalmente bien, pero en algún momento no es práctico.

Puede agregar el comando de fecha al prompt , que mostrará un (fijo ) reloj cada vez que el shell está listo para el comando, o puede usar uno de los multiplexores de terminal que tienen una línea de estado. Mi preferido (aunque admito el más antiguo) es la pantalla GNU.

En la consola o en un terminal, diga vía ssh , si usa pantalla , entre billones de diferentes < a href="http://www.rackaid.com/blog/linux-screen-tutorial-and-how-to/"> cosas que puede hacer (solía pensar en screen como ineludible para cuando tenía solo un terminal de texto) tiene la opción --- que normalmente está en la configuración predeterminada --- de tener un reloj en la línea de estado:

(La captura de pantalla está en un terminal virtual, pero es lo mismo en una consola virtual).

    
respondido por el Rmano 09.06.2015 - 17:50
8

Con Ubuntu 15.04 (systemd) también hay timedatectl que le muestra la hora y le permite cambiarlo y más en man timedatectl .

Sin argumentos da

% timedatectl
Warning: Ignoring the TZ variable. Reading the system's time zone setting only.

      Local time: ke 2015-06-10 10:31:59 EEST
  Universal time: ke 2015-06-10 07:31:59 UTC
        RTC time: ke 2015-06-10 07:31:59
       Time zone: Europe/Helsinki (EEST, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  su 2015-03-29 02:59:59 EET
                  su 2015-03-29 04:00:00 EEST
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  su 2015-10-25 03:59:59 EEST
                  su 2015-10-25 03:00:00 EET

Y otra buena característica que he usado es timedatectl set-ntp true que activa systemd-timesyncd que es un cliente SNTP (Simple Network Time Protocol) que sincroniza tu reloj con el servidor remoto.

    
respondido por el Mikaela 10.06.2015 - 09:35
4

También mostrará la fecha y la hora:

sudo hwclock

Más detallado:

man hwclock
    
respondido por el JoKeR 09.06.2015 - 16:38
1

No se mencionó a Python, así que lo lanzaré aquí:

$ python -c 'import time;print(time.asctime(time.localtime()))'                                                                       
Tue Nov 29 20:25:27 2016

La forma en que funciona es bastante simple:

  • importamos el módulo time
  • La función localtime() le da al struct datatype toda la información necesaria, como la hora del día, el día, el año, etc.
  • asctime() convierte toda esa información en cadena, e imprimimos muy bien formateado

Funciona en python 2 y 3 por igual.

    
respondido por el Sergiy Kolodyazhnyy 30.11.2016 - 04:25
0

si busca algo como YYYYMMDDHHMMSS , 20160804020100 use esto:

date +%Y%m%d%H%M%S

sirve para la mayoría de los propósitos, como la copia de seguridad de archivos o el filtrado de registros.

    
respondido por el computingfreak 30.11.2016 - 04:17

Lea otras preguntas en las etiquetas