Fecha cadena a época en bash

¿Cómo puedo get la época si tengo una cadena en el siguiente formatting?
1/30/2017 11:14:55 AM
Lo siguiente no funciona:

 $ date -j '1/30/2017 11:14:55 AM' +'%m/%d/%Y %H:%M:%S' date: illegal time format 

Related of "Fecha cadena a época en bash"

Simplemente especifique el formatting de input con -f :

 $ date -jf '%m/%d/%Y %H:%M:%S %p' '1/30/2017 11:14:55 AM' '+%m/%d/%Y %H:%M:%S' 01/30/2017 11:14:55 

Lo que sigue después es el formatting de salida . Si quieres el time de época, eso sería +%s .

(Nótese que no hay nada específico de bash en ese código. Ese código se analizaría de la misma forma en cualquier shell, incluso los que no son de Bourne. La date no es un command bash incorporado, aquí está el command de date encontrado en el sistema de files. específicamente uno que admite esas extensiones -f / -j BSD. En sistemas que no son BSD, el command es probable que no funcione independientemente de si el shell es bash u otro. Algunas shells como zsh o ksh93 tienen capacidades de análisis de time integradas pero no bash )