在linux中获取文件的访问时间

时间:2013-06-09 06:38:40

标签: linux unix

Hello目前在linux中我用一个文件运行stat,它产生了这个:

File: `/var/www/html/assetlib/web/uploads/5d32500c44e62277d198a89d3ed8f69729d83e62.png'  
Size: 18241         Blocks: 40         IO Block: 4096   regular file                       
Device: ca01h/51713d    Inode: 131903      Links: 1
Access: (0666/-rw-rw-rw-)  Uid: (   48/  apache)   Gid: (   48/  apache)           
Access: 2013-06-04 05:33:08.909346476 +0000           
Modify: 2013-06-04 05:33:08.909346476 +0000                                             
Change: 2013-06-04 05:33:08.909346476 +0000\

我怎样才能获得访问时间,我只想拥有2013-06-04 05:33:08 我尝试使用awk但是不成功,我是linux的菜鸟! 任何帮助是极大的赞赏。谢谢!

5 个答案:

答案 0 :(得分:1)

--printf='%x'提供人类可读的最后访问时间(man stat)。然后使用cut删除.

之后的内容
$ stat --printf='%x' myfile | cut -d. -f 1
2013-06-02 16:00:15

答案 1 :(得分:1)

试试这个

stat file | awk "NR==6"

答案 2 :(得分:1)

 Kaizen ~/so_test $ stat -c "%x" zsleep_cntr.sh
 2013-06-06 09:51:08.981417300 +0530

这有帮助吗?

答案 3 :(得分:0)

或使用grep和cut:

stat backup.txt | grep Access | grep -v Uid | cut -b 9-37

答案 4 :(得分:0)

以下是使用awk的一种方法:

stat myfile | awk '$1=="Access:" && NF==4 { gsub("\\..*$","",$3); print $2," ",$3 }'