GNU/Linux >> Tutoriales Linux >  >> Linux

Agregue un tiempo específico mientras usa la fecha del comando de Linux

En Linux

Solo usa -d (o --date ) para hacer algunos cálculos con las fechas:

date -d '+1 hour' '+%F %T'
#    ^^^^^^^^^^^^

Por ejemplo:

$ date '+%F %T'
2013-04-22 10:57:24
$ date -d '+1 hour' '+%F %T'
2013-04-22 11:57:24
#           ^

En Mac OS

Advertencia, lo anterior solo funciona en Linux, no en Mac OS.

En Mac OS, el comando equivalente es

date -v+1H

Linux y macOS en un solo comando

Si necesita escribir scripts que funcionen tanto en servidores Linux como en estaciones de trabajo macOS, puede silenciar el error del primer date llamar y 'O' (|| ) con el otro. No importa qué viene primero.

date -u -d "+${max_age}Seconds" +"%Y-%m-%dT%H:%M:%SZ" 2>/dev/null || \
date -u -v "+${max_age}S"       +"%Y-%m-%dT%H:%M:%SZ"

Por ejemplo, esta función bash carga un archivo en AWS S3 y establece un Expires: y Cache-Control: encabezados.

s3_upload_cache_control(){
  local max_age_seconds="${1}" ;shift         # required
  local bucket_path="${1}"     ;shift         # required
  local filename="${1}"        ;shift         # required
  local remote_filename="/${1:-${filename}}"  # optional
  local fmt="+%Y-%m-%dT%H:%M:%SZ"
  aws s3 cp                                                          \
    "${filename}"                                                    \
    "s3://${bucket_path}${remote_filename}"                          \
    --expires                                                  "$(   \
      date -u -d "+${max_age_seconds}Seconds" $fmt 2>/dev/null  ||   \
      date -u -v "+${max_age_seconds}S"       $fmt               )"  \
    --cache-control max-age=$max_age,public                          \
    --acl public-read
}


En el script de shell, si necesitamos agregar tiempo, use el comando a continuación y el formato de fecha (PUT TIME before DATE string)

date -d"11:15:10 2017-02-05 +2 hours" +"%Y-%m-%d %H:%M:%S" esto generará 2017-02-05 13:15:10

Esto no da como resultado una fecha correcta sin UTC, no funciona


Linux
  1. Programar una tarea con Linux al mando

  2. Una introducción al uso de tcpdump en la línea de comandos de Linux

  3. Usando la fuerza en la línea de comando de Linux

  4. Cómo programar tareas usando at en Linux

  5. Establecer el tiempo relativo usando la línea de comando

Trucos de formato para el comando de fecha de Linux

11 ejemplos útiles de comandos de fecha de Linux

Tutorial sobre el uso del comando Timeout en Linux

Tutorial sobre el uso del último comando en la terminal de Linux

Ejemplos de comandos de fecha de Linux

Entendiendo el comando time en Linux