Imposta la data di Linux con ddmmyy


0

Devo impostare la data di un box Linux con una stringa che ottengo da un programma. Questa stringa è formattata come ggmmyy. È possibile utilizzarlo direttamente o devo prima riformattarlo?

Attualmente ho provato quanto segue senza fortuna:

 date +%d%m%y -s "071012"

Dovrebbe essere il 7 ottobre 2012, ma viene interpretato all'indietro e quindi diventa il 12 ottobre 07.

Se provo a dire la data per utilizzare il formato inverso:

date +%y%m%d -s "071012"

continuerà a leggerlo come il 12 ottobre. Preferirei non invertire la stringa perché pensavo che la data sarebbe stata in grado di occuparmene.

Risposte:


3

Il +impostare l' uscita unico formato. È necessario preformattare la stringa se si desidera utilizzare l' -sopzione (modificando il programma o utilizzando ad esempio sed).

Nel tuo caso, puoi convogliare il risultato del tuo programma in questo modo:

sed -e "s/\(..\)\(..\)\(..\)/\\3\\2\\1/"

0

Memorizza la data in una variabile shell e puoi impostare la data in questo modo:

dt=`your_program`
date -s "${dt:4:2}${dt:2:2}${dt:0:2}"
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.