Portál AbcLinuxu, 12. května 2025 02:47

Dotaz: file date bash

18.6.2018 18:26 k11
file date bash
Přečteno: 2123×
Odpovědět | Admin
Zdravím. Jak načtu do proměnné datum poslední změný souboru.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.6.2018 19:05 Petr
Rozbalit Rozbalit vše Re: file date bash
Odpovědět | | Sbalit | Link | Blokovat | Admin
man 1 stat
18.6.2018 20:52 k11
Rozbalit Rozbalit vše Re: file date bash
To jsem trochu nepochopil, lama :(

ATIME=$(stat -c "%x" /home/pi/yt.txt)

echo $ATIME

2018-06-18 20:48:15.000000000 +0200

Potřebují jen to 20:48:15
18.6.2018 21:10 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: file date bash
... | cut -c12-19
18.6.2018 21:26 drnest | skóre: 13 | blog: Dřinu nechte strojům
Rozbalit Rozbalit vše Re: file date bash

Píšeš, že chceš čas modifikace, ale %x je "last access. Proměnnou máš taky pojmenovanou ATIME. Tak nevím. Pokud chceš opravdu modifikace, tak je to %y.

No protože stat neumí formátovat čas, budeš to muset nechat vypsat ve stroje čitelném formátu %Y a pak něčím zkonvertovat. Pokud jde opravdu o bash, tak ten umí konvertovat čas vestavěnou funkcí printf:

MTIME=$(printf "%(%H:%M:%S)T" $(stat -c "%Y" .bash_history))
19.6.2018 06:08 k11
Rozbalit Rozbalit vše Re: file date bash
stat: nelze získat informace o '%x': Adresář nebo soubor neexistuje

20:48:15

Ale jinak těch 20:48:15 je spravně.
19.6.2018 07:44 k11
Rozbalit Rozbalit vše Re: file date bash
MTIME=$(printf "%(%H:%M:%S)T" $(stat -c "%Y" /home/pi/yt.txt))

Tak je to ok

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.