GNU/Linux >> Tutoriales Linux >  >> Linux

Obtenga la zona horaria actual como `Región/Ciudad`

En este comentario de Stéphane Chazelas, dijo:

timedatectl es un systemd cosa que consulta timedated sobre dbus y timedated deriva el nombre de la zona horaria (como Europe/London ) haciendo un readlink() el /etc/localtime . Si /etc/localtime no es un enlace simbólico, entonces ese nombre no se puede derivar ya que esos archivos de definición de zona horaria no contienen esa información.

Basándome en esto y en el comentario de Tonioc, armé lo siguiente:

#!/bin/bash
set -euo pipefail

if filename=$(readlink /etc/localtime); then
    # /etc/localtime is a symlink as expected
    timezone=${filename#*zoneinfo/}
    if [[ $timezone = "$filename" || ! $timezone =~ ^[^/]+/[^/]+$ ]]; then
        # not pointing to expected location or not Region/City
        >&2 echo "$filename points to an unexpected location"
        exit 1
    fi
    echo "$timezone"
else  # compare files by contents
    # https://stackoverflow.com/questions/12521114/getting-the-canonical-time-zone-name-in-shell-script#comment88637393_12523283
    find /usr/share/zoneinfo -type f ! -regex ".*/Etc/.*" -exec \
        cmp -s {} /etc/localtime \; -print | sed -e '[email protected]*/zoneinfo/@@' | head -n1
fi

Para la zona horaria, puede usar la geolocalización:

$ curl https://ipapi.co/timezone
America/Chicago

O:

$ curl http://ip-api.com/line?fields=timezone
America/Chicago

http://wiki.archlinux.org/index.php/time#Time_zone


Linux
  1. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  2. ¿La diferencia entre ~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc...?

  3. CentOS / RHEL:cómo recuperarse de un archivo /etc/passwd eliminado

  4. Comando grpck:elimine las entradas corruptas o duplicadas en los archivos /etc/group y /etc/gshadow.

  5. ¿Cuándo debo usar /dev/shm/ y cuándo debo usar /tmp/?

La forma correcta de editar archivos /etc/passwd y /etc/group en Linux

Comprender los archivos /proc/mounts, /etc/mtab y /proc/partitions

¿Cuál es la conexión entre los directorios /etc/init.d y /etc/rcX.d en Linux?

¿Cómo puedo revertir un chmod en el directorio etc?

Configuración de la zona horaria con un script automatizado

¿Deberían vivir los sitios web en /var/ o /usr/ según el uso recomendado?