2009-08-10 19 views
6

C'è un'opportunità per convertire una stringa in una data in bash? Ad esempio: ho un formato orario: "%Y-%m-%dS%H:%M:%S". Un esempio di tale stringa è "2009-06-24S12:34:56". Ho bisogno di convertire questa stringa in una data (unix timestamp) in bash. Come posso fare questo?stringa bash alla data

+2

Che cosa si intende per "data"? Intendi un timestamp UNIX? O qualche altro formato di data? –

risposta

15

Usa

date --utc --date "<input string>" +%s 
+0

Sono su solaris 10. Questo non funziona su di esso. Scusa, avrei dovuto menzionare il sistema operativo. data: opzione illegale - utc data: opzione illegale - data utilizzo: data [-u] mmddHHMM [[cc] aa] [. SS] data [-u] [+ formato] data -a [ -] sss [.fff] – Markus

+1

Ah, Solaris. Se fai una rapida ricerca su Google, troverai molte persone alle prese con lo stesso problema: il programma data di Solaris non è così potente come gli altri là fuori. Probabilmente potresti ottenere gli stessi risultati usando Perl o un programma C. –

+0

E Perl dovrebbe anche essere disponibile su quasi tutte le scatole di Solaris. –