ver - Compensación de una zona horaria determinada de GMT en la secuencia de comandos linux shell
ver zona horaria linux (2)
Esta es una forma indirecta de hacerlo, pero funciona ( basado libremente en esto ):
#!/bin/bash
ZONE=$1
TIME=$(date +%s --utc -d "12:00:00 $ZONE")
UTC_TIME=$(date +%s --utc -d "12:00:00")
((DIFF=UTC_TIME-TIME))
echo - | awk -v SECS=$DIFF ''{printf "%d",SECS/(60*60)}''
Guarde eso como tzoffset
, tzoffset
ejecutable y ejecútelo así:
tzoffset PST
Este script en su forma actual solo maneja zonas horarias abreviadas.
¿Hay alguna manera de obtener el desplazamiento de una zona horaria determinada (identificador como EDT o America / New_York) desde GMT en el script de linux shell?
Exporte su variable de entorno TZ e imprima la fecha con% z para el desplazamiento de la zona horaria.
#!/bin/sh
export TZ=":Pacific/Auckland"
date +%z