Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy
počítačové znalosti >> Systémy >> linux >> .

Ako konvertovať/zmeniť časovú epochu pomocou nástroja dátumu na serveri Linux alebo Unix{13 najlepších príkladov}

Techniky konverzie v čase epochy:

1. Previesť dátum na čas epochy:

Ak chcete previesť dátum a čas na čas epochy v sekundách môžete použiť príkaz `date` s voľbou ` +%s`.

Ak chcete napríklad previesť dátum a čas „1. januára 1970 00:00:00 UTC“ na čas epochy, použite nasledujúci príkaz:

```

$ dátum --utc -d '1970-01-01 00:00:00 UTC' +%s

```

Tento príkaz by vydal nasledujúci čas epochy:

```

0

```

2. Previesť čas epochy na dátum:

Ak chcete previesť čas epochy na dátum a čas, môžete použiť príkaz `date` s voľbou ` -d @`.

Ak chcete napríklad previesť čas epochy „0“ na dátum a čas, použite nasledujúci príkaz:

```

$ dátum -d @0

```

Tento príkaz vydá nasledujúci dátum a čas:

```

Št. január 00:00:00 UTC 1970

```

3. Pridať/odčítať sekundy k/od času epochy:

Ak chcete pridať alebo odčítať sekundy od epoch time môžete použiť príkaz `date` s voľbami ` -d @` a ` +%s`.

Napríklad na pridanie 60 sekúnd k času epochy „0“ by ste použili nasledujúci príkaz:

```

$ dátum -d @0 +%s

```

Tento príkaz by vydal nasledujúci čas epochy:

```

60

```

Na odčítanie 60 sekúnd od času epochy „60“ by ste použili nasledujúci príkaz:

```

$ dátum --date='@60 sekúnd' -u +%s

```

5. Prevod sekúnd na formát dátumu:

```

$ dátum -d @1585233869

```

Odčítanie 1 dňa (86400 sekúnd) od času epochy:

```

$ dátum -d "teraz - 1 deň" + %s

```

Tu je 13 najlepších príkladov konverzie alebo zmeny časovej epochy pomocou nástroja dátumu v systéme Linux alebo Unix:

1. Preveďte dátum na čas epochy s ohľadom na časové pásmo:

Ak chcete napríklad previesť dátum a čas „1. januára 1970 12:00:00 PM EST“ na čas epochy v sekundách, použite nasledujúci príkaz:

```

$ date --date '1970-01-01 12:00:00 EST' +%s

```

Tu sa `dátum` používa s možnosťou `--date` na prevod reťazca reprezentujúceho dátum a čas na čas epochy. ` +%s` formátuje výstup ako počet sekúnd od 1. januára 1970, 00:00:00 UTC.

Tento príkaz by vydal nasledujúci čas epochy:

```

3600

```

2. Preveďte čas epochy na dátum s ohľadom na UTC:

Ak chcete napríklad previesť čas epochy „1585233869“ na dátum a čas vo formáte UTC, použite nasledujúci príkaz:

```

$ dátum -ud @1585233869

```

V tomto príklade sa voľba `-ud` používa so symbolom `@` na interpretáciu času epochy `1585233869` ako časovej pečiatky Unixu v UTC.

Tento príkaz vydá nasledujúci dátum a čas:

```

29. nedeľa 18:24:29 UTC 2020

```

3. Previesť čas epochy na miestne časové pásmo:

Ak chcete previesť čas epochy "1585233869" na dátum a čas v konkrétnom časovom pásme, použite `dátum -d @1585233869 -T "časové pásmo"` a nahraďte "časové pásmo" požadovaným časovým pásmom.

```

$ date -d @1585233869 -T "Amerika/New_York"

```

Toto by zobrazilo:

```

29. nedeľa 13:24:29 EDT 2020

```

4. Prevod dátumu na milisekundy epochy (milisekundy od epochy):

Ak chcete previesť dátum ako „1. júl 2020, 12:30“ na milisekundy, použite „dátum +%s%3N“, kde „+%s“ predstavuje sekundy od epochy a „%3N“ pripája 3 číslice pre milisekundy .

```

$ dátum -- dátum '1. júl 2020, 12:30' +%s%3N

```

Výsledkom sú milisekundy epoch:

```

1593630600992

```

5. Previesť epochu millis na ľudsky čitateľný dátum:

Ak chcete previesť epochu millis, napríklad 1593630600000, na dátumový reťazec, použite `date -d @epoch-millis +'%Y-%m-%d %H:%M:%S.%3N'`.

```

$ dátum -d @1593630600000 +'%Y-%m-%d %H:%M:%S.%3N'

```

výstup:

```

01.07.2020 12:30:00 000

```

6. Získajte aktuálny dátum a čas v strojovo čitateľnom formáte:

`date +%s%3N` zobrazuje epochu v milisekúndách, čo je užitočné pri porovnávaní dvoch dátumov.

```

$ dátum +%s%3N

```

výstup:

```

1593633240539

```

7. Pridajte alebo odčítajte dni od epochy:

`date -d @epoch-seconds + days` upraví čas epochy o zadaný počet dní. Napríklad:

```

$ dátum -d @ 1593630600 + 3 dni

```

výstup:

```

Štvrtok 4. júla 12:30:00 EDT 2020

```

8. Odčítajte dátumy a vypočítajte rozdiel:

Ak chcete vypočítať rozdiel medzi dvoma dátumami, nájdite ich sekundy epochy a odčítajte ich. Napríklad:

```

$ end_time=$(dátum +%s)

$ start_time=$(dátum -d "2019-07-01" +%s)

$ different_in_seconds=$(( end_time – start_time ))

```

9. Pridanie alebo odčítanie časových intervalov:

Ak chcete pridať alebo odčítať konkrétne intervaly, ako napríklad 5 hodín a 30 minút od času danej epochy, použite:

```

$ dátum -d @1593630600 +5 hodín -30 minút

```

výstup:

```

Pia, 2. júla, 12:00:00 EDT 2020

```

10. Počítajte dátum do budúcej udalosti:

Ak chcete určiť, ako dlho do konkrétneho dátumu v budúcnosti, skonvertujte oba relevantné dátumy na sekundy epochy a vypočítajte rozdiel. Napríklad:

```

$ end_time=$(dátum -d "2021-12-25 00:00" +%s)

$ start_time=$(dátum +%s)

$ seconds_until_Christmas=$(( end_time - start_time ))

```

11. Počítanie dátumov od minulej udalosti:

Podobne počítanie počtu dní od udalosti, ako sú narodeniny, by zahŕňalo odčítanie sekúnd epochy dátumu udalosti od aktuálneho dátumu:

```

$ narodeniny=$(dátum -d "1999-09-01" +%s)

$ current_time=$(dátum +%s)

$ days_since_birthday=$(((aktuálny_čas – narodeniny)/(60*60*24) ))

```

12. Vygenerujte náhodný čas epochy:

Ak chcete vytvoriť náhodnú časovú pečiatku v zadanom rozsahu dátumov, použite nasledujúci príkaz:

```

$ min_time=$(dátum -d "2019-07-01" +%s)

$ max_time=$(dátum -d "2020-07-31" +%s)

$ random_time=$(shuf -i $min_time-$max_time -n1)

$ dátum -d @$random_time

```

13. Prevod času čitateľného pre človeka na sekundy:

Ak chcete zjednodušiť výpočty času, preveďte časové rozpätia čitateľné človekom na sekundy pomocou kalkulačky „expr“:

```

$ seconds_5_hours=$ (výraz 5 \* 60 \* 60)

$ date +%s -d "teraz - $seconds_5_hours seconds"

```

Toto zobrazí aktuálny dátum/čas znížený o 5 hodín:

```

Pia, 9. júla 15:02:20 EDT 2021

```

Pamätajte, že pri výpočtoch súvisiacich s časom je výber vhodného časového pásma kľúčový na zabezpečenie presných výsledkov.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené