El datecomando de salida a la fecha actual y la hora de esta manera: Fri Apr 12 15:04:03 UTC 2013.
Para tener la fecha y hora de salida en un formato personalizado, podemos usar date +FORMAT, por ejemplo, así: lo date "+%Y-%m-%dT%H:%M:%S%:z"que da algo así 2013-04-12T15:04:37+00:00.
Pero yo quiero saber lo que el %Y, %m, %d, %H, %M, %S, etc. son llamados colectivamente (es decir, la terminología). Además, ¿cómo se Tllama, ya que es diferente del resto?
date
terminology
soy yo
fuente
fuente

dateY la" T "es solo una literal" T ".%Ysignificado como al respectivo.date +"You will die in the year %Y"Tno es especial. Además, estaba teniendo un día extraño en el trabajo cuando escribí eso (escuchando las conversaciones de los compañeros de trabajo).Respuestas:
El término utilizado en la especificación POSIX del
datecomando es "especificaciones de conversión".La cadena de formato para el
datecomando se basa estrechamente en la cadena de formato para laprintffunción de C ; el estándar C también se refiere a cosas%dcomo "especificaciones de conversión".Tno precedido por%es solo un carácter: "Todos los demás caracteres se copiarán a la salida sin cambios".De acuerdo con la sección del historial de cambios de la descripción POSIX de
date:Aparentemente, una versión anterior de la especificación utilizaba la frase "descriptores de campo", pero "especificaciones de conversión" es el término oficial actual.
Por supuesto, eso no significa que tenga que referirse a ellos de esa manera.
fuente
conversion sequences" o "format sequences" términos apropiados también? Estoy considerandosequencesmásspecificationsporque se trata en realidad menciona en la página del manualdate.Creo que "secuencias de escape" o (en este caso) "caracteres especiales para secuencias de porcentaje de escape" sería la forma típica de referirse a ellas. Las secuencias de barra invertida y de porcentaje de escape se usan mucho en C (por ejemplo, printf), por lo que también se han filtrado en varios comandos de Unix (como especificar la solicitud para el shell).
La "secuencia de escape" es "% Y", "% m", "% d" y así sucesivamente; y los "caracteres especiales" son "Y", "m", "d" y así sucesivamente. "%" sería el "carácter de escape" (el carácter que le da al siguiente carácter un significado inusual / especial).
fuente
Este documento de Centro de información de IBM establece claramente que los alfabetos en
%Y,%m,%d,%H,%M,%S, etc. son llamados " descriptores de campo ".Eso responde a mis dos preguntas (sobre% n & T). Y creo que esto es tan autoritario como puede ser.
fuente
datecomando; ¿Qué hace que su documentación sea autoritativa? El comportamiento del comando está definido actualmente por POSIX, que no utiliza ese término. El historial de cambios en la parte inferior de la descripción POSIX dice "La DESCRIPCIÓN se actualiza para referirse a las especificaciones de conversión, en lugar de los descriptores de campo para mantener la coherencia con la categoría LC_TIME", lo que implica que "especificación de conversión", no "descriptor de campo" es el correcto término actual Vea también mi respuesta actualizada.Como otros han dicho, la
Tletra es literalT. Pero para ser específicos, su ejemplodate "+%Y-%m-%dT%H:%M:%S%:z"parece ser una cadena de formato conforme a la especificación ISO-8601 para fecha y hora. Así que aquíThay un delimitador que separa la fecha de la hora.fuente