Fecha de ejecución del comando

Fecha de ejecución del comando

Estoy intentando ejecutar este comando date +'%-4.4h %2.1d %H:%M'pero el resultado no es correcto:

%-4.4h %2.1d 12:50  

Creo que hay algún problema con mi terminal Ubuntu o con el código. ¿Algún consejo, por favor? pd: principiante

Respuesta1

Hasta donde yo sé, %-4.4hy %2.1dno son especificadores de formato válidos para el datecomando GNU; en particular, los modificadores de precisión no tienen sentido y no son compatibles. Los modificadores aceptados son:

   After any flags comes an optional field width, as a decimal  number;  then  an  optional
   modifier,  which is either E to use the locale's alternate representations if available,
   or O to use the locale's alternate numeric symbols if available.

("decimal" aquí solo significa dígitos del 0 al 9).

Los especificadores de formato para el nombre completo del mes y el día del mes son %By %drespectivamente (puede usar minúsculas %bo %hpara el nombre abreviado del mes, por ejemplo, Seppara September). Así por ejemplo:

$ date +'%B %d %H:%M'
May 12 07:46

$ date +'%B %d %H:%M' -d 'today + 4 months'
September 12 07:48

$ date +'%b %d %H:%M' -d 'today + 4 months'
Sep 12 07:50

Tenga en cuenta que los especificadores de ancho de campo sonmínimoanchos, así por ejemplo

$ date +'%4B %4d %H:%M'
 May 0012 08:04

rellena Maya 4 caracteres, pero

$ date +'%4B %4d %H:%M' -d 'today + 4 months'
September 0012 08:03

no se trunca Septembera Sept.

Consulte man datepara obtener una lista completa de %especificadores.

información relacionada