2012-03-04 21 views
13

Estoy tratando de obtener la hora actual en un script bash y almacenarlo en una base de datos MySql. ¿Cómo puedo obtener la hora actual y convertirla a un formato que se puede guardar en un campo de fecha y hora de MySql?Bash time to mysql datetime

+3

¿Por qué no usas 'NOW()' de mysql? Usar ** solo ** el tiempo del servidor de db es una práctica común – zerkms

+0

¿Hay alguna razón por la cual necesita el tiempo bash y no puede usar las funciones de tiempo actual en MySQL? (¡Maldita sea, le gané!) –

Respuesta

18

Se puede escribir:

date +'%F %T' 

que imprimirá algo como: (. Pero a medida que zerkms dice, es probablemente mejor utilizar sólo NOW() dentro de MySQL)

2012-03-04 11:56:54 

+0

Funcionó para mí, pero parece que los espacios adicionales no son bienvenidos. He agregado espacio extra después del signo más (+), que rompió el guión. ¡Gracias! – Rolice

2

Equivalente de la respuesta de @ruakh, en forma expandida:

date +'%Y-%m-%d %H:%M:%S' 

que imprimir algo como:

2014-04-14 11:33:48 

útil si algunos de los caracteres de separación la marca de fecha no son válidos para un solo uso o de la otra.