【linux】linux命令如何查看文件、文件夹的属性,包括大小、修改时间、谁修改的...

【linux命令如何查看文件、文件夹的属性,包括大小、修改时间、谁修改的】
1、查看文件大小:
#du -sh filename
2、查看文件,文件夹属性:
#ls -l filename
#ls -ld foldername
3、查看文件的三个时间 atime ,ctime, mtime
3.1、 mtime(modification time),修改时间: 这个时间指的是文件内容修改的时间,而不是文件属性的修改,当数据内容修改时,这个时间就会改变,用命令ls -l默认显示的就是这个时间
3.2、ctime(status time ),状态时间:当一个文件的状态改变时,这个时间就会改变,例如更改了文件的权限与属性等,它就会改变。
3.3、atime(access time),访问时间:当读取文件内容时,就会更改这个时间,例如使用cat 去读取/etc/man.config,那么该文件的atime就会改变。
3.4、查看命令:
# ls -l --full-time /etc/man.config mtime
# ls -l --time=atime --full-time /etc/man.config atime
# ls -l --time=ctime --full-time /etc/man.config ctime
4、其他
如果要一起查看文件的三个时间情况,可以用命令stat进行查看
# stat /etc/man.config

【linux 下查看文件修改时间 等】
查看文件时间戳命令:stat awk.txt
File: `awk.txt'
Size: 20 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 380730 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2008-04-26 01:50:44.000000000 +0800
Modify: 2008-04-26 01:48:18.000000000 +0800
Change: 2008-04-26 01:48:18.000000000 +0800

说明:Access访问时间。Modify修改时间。Change状态改变时间。可以stat *查看这个目录所有文件的状态。
现在是要过滤出Modify的时间戳,并以yyyyMMddHHSS格式保存,则可以利用下面这条命令:
stat awk.txt | grep -i Modify | awk -F. '{print $1}' | awk '{print $2$3}'| awk -F- '{print $1$2$3}' | awk -F: '{print $1$2$3}'
输出结果:20080426014818

修改文件时间与创建新文件:touch

在介绍ls命令时,提到每个文件在Linux下面都会记录3个主要的修改时间:
• modification time(mtime,修改时间):当该文件的“内容数据”更改时,就会更新这个时间。内容数据指的是文件的内容,而不是文件的属性。
• status time(ctime,状态时间):当该文件的”状态(status)”改变时,就会更新这个时间,举例来说,更改了权限与属性,就会更新这个时间。
• access time(atime,存取时间):当“取用文件内容”时,就会更新这个读取时间。举例来说,使用cat去读取 ~/.bashrc,就会更新atime了。
举例来说,我们来看一看/etc/man.config文件的时间。

[root@linux ~]# ls -l /etc/man.config
-rw-r--r-- 1 root root 4506 Apr 8 19:11 /etc/man.config
[root@linux ~]# ls -l --time=atime /etc/man.config
-rw-r--r-- 1 root root 4506 Jul 19 17:53 /etc/man.config
[root@linux ~]# ls -l --time=ctime /etc/man.config
-rw-r--r-- 1 root root 4506 Jun 25 08:28 /etc/man.config
看到了吗?在默认的情况下,ls显示的是该文件的mtime,也就是这个文件的内容上次更改的时间。我的系统是在6/25安装的,因此,这个文件产生但状态更改的时间就回溯到那个时间点。因为刚才的范例中使用到这个文件,所以,它的atime就会变成刚刚使用的时间了。

文件的时间很重要,因为如果误判文件时间,可能会造成某些程序无法顺利运行。那么,万一我发现了一个文件来自将来(很多时候会有这个问题的。我们在安装的时候,提到的GMT时间就是那个意思),该如何让该文件的时间变成“现在”的时刻呢?很简单,用touch命令即可。

[root@linux ~]# touch [-acdmt] 文件
参数:
-a : 仅修改access time。
-c : 仅修改时间,而不建立文件。
-d : 后面可以接日期,也可以使用 --date="日期或时间"
-m : 仅修改mtime。
-t : 后面可以接时间,格式为 [YYMMDDhhmm]
范例:
范例一:新建一个空的文件。
[root@linux ~]# cd /tmp
[root@linux tmp]# touch testtouch
[root@linux tmp]# ls -l testtouch
-rw-r--r-- 1 root root 0 Jul 19 20:49 testtouch
# 注意,这个文件的大小是0。在默认的状态下,如果touch后面接文件,
# 则该文件的3个时间(atime/ctime/mtime)都会更新为当前时间。若该文件不存在,
# 则会主动建立一个新的空文件。例如上面这个例子。
范例二:将 ~/.bashrc复制成为bashrc,假设复制完全的属性,检查其日期。
[root@linux tmp]# cp ~/.bashrc bashrc
[root@linux tmp]# ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc
-rwxr-xr-x 1 root root 395 Jul 4 11:45 bashrc <==这是mtime
-rwxr-xr-x 1 root root 395 Jul 19 20:44 bashrc <==这是atime
-rwxr-xr-x 1 root root 395 Jul 19 20:53 bashrc <==这是ctime
# 在这个案例中,我们使用了 ; 命令分隔符,它的用法我们会在Bash shell中提到。
# 此外,ll是ls -l的命令别名,这个也会在bash shell中再次提及,
# 当前可以简单地想成,ll就是ls -l的简写。至于 ; 则是同时发出两个命令,
# 且让两个命令“按顺序”执行的意思。上面的结果中可以看到,该文件更改的日期
# Jul 4 11:45,但是atime与ctime不一样。
范例三:修改案例二的bashrc文件,将日期调整为两天前。
[root@linux tmp]# touch -d "2 days ago" bashrc
[root@linux tmp]# ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc
-rwxr-xr-x 1 root root 395 Jul 17 21:02 bashrc
-rwxr-xr-x 1 root root 395 Jul 17 21:02 bashrc
-rwxr-xr-x 1 root root 395 Jul 19 21:02 bashrc
# 与上一个范例比较,本来是19日的变成了17日了(atime/mtime)。
# 不过,ctime并没有跟着改变。
范例四:将上个范例的bashrc日期改为2005/07/15 2:02。
[root@linux tmp]# touch -t 0507150202 bashrc
[root@linux tmp]# ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc
-rwxr-xr-x 1 root root 395 Jul 15 02:02 bashrc
-rwxr-xr-x 1 root root 395 Jul 15 02:02 bashrc
-rwxr-xr-x 1 root root 395 Jul 19 21:05 bashrc
# 注意,日期在atime与mtime都改变了,但ctime则是记录当前的时间。
通过touch命令,可以轻松地修改文件的日期与时间。并且,也可以建立一个空文件。不过,要注意的是,即使复制一个文件,复制所有属性,但也没有办法复 制ctime属性。ctime可以记录文件最近改变状态(status)的时间。无论如何,还是要说明一下,我们平时看的文件属性中,比较重要的还是 mtime。我们关心的常常是这个文件的“内容”是什么时候更改的。
touch这个命令最常用的情况是:
• 建立一个空文件。
• 将某个文件日期修改为当前日期(mtime与atime)。

与文件相关的几个时间:

1、访问时间,读一次这个文件的内容,这个时间就会更新。比如对这个文件使用more命令。ls、stat命令都不会修改文件的访问时间。

2、修改时间,对文件内容修改一次,这个时间就会更新。比如:vi后保存文件。ls -l列出的时间就是这个时间。

3、状态改变时间。通过chmod命令更改一次文件属性,这个时间就会更新。查看文件的详细的状态、准确的修改时间等,可以通过stat命令 文件名。

转载于:https://www.cnblogs.com/opensmarty/p/10838311.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277768.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac OS使用技巧之三:发射无线网络信号的方法

许多人知道在windows下可以直接借助各种辅助软件来直接发射wifi信号&#xff0c;比如360wifi&#xff0c;猎豹wifi。或者可以直接在命令行里面设置。许多人却不知道Mac系统也有方便快捷发射无线信号的功能。下面讲一下利用Mac OS发射无线网络信号的方法。前提&#xff1a;你的电…

关于基本工作素养在职场当中的重要性

各位小伙伴&#xff1a; 今天博主就和大家分享一下&#xff0c;一个优秀的工作素养在职场中的重要性&#xff0c;中央军军容军纪整洁&#xff0c;队伍有条有理&#xff0c;为何地方军阀&#xff0c;层次不穷&#xff0c;恶习满贯。其核心根本就是职业素养低。 大家都是干技术的…

纪实:对CSDN博客系统的一些质疑

我是一个对编程充满热情的在校大学生&#xff0c;本来我是怀着满腔热情来到CSDN写博客&#xff0c;记录和分享自己的学习经历。却被这糟糕的博客系统一次次的泼冷水。写这篇博客确实是因为心中十分不甘和特别生气&#xff0c;所以我决定要把自己的遭遇写出来&#xff0c;我自己…

php框架之laravel

常见问题: 1. 访问网站500错误 这是因为laravel的缓存路径没有找到 laravel缓存文件路径是在 config/cache.php中设置&#xff0c;默认存在storage文件夹中 解决:需要保证storage/framework下面创建 sessions&#xff0c; views, cache 文件夹并确保可写权限 转载于:https://ww…

MySQL的命令合集

2019独角兽企业重金招聘Python工程师标准>>> MySQL客户端操作 $db$是数据库名称$table$是数据表名称$field$是数据表里的字段名称有些语句最后加上**/G**可以使结果更美观数据库相关 创建数据库,修改数据库 create database $db$; 使用默认设置create database $db$…

Mac OS使用技巧之四:修改打开不同格式视频的默认播放器

这里说一下视频播放的一些问题。大家知道Mac OS中有自带的一款播放器&#xff0c;叫做Quicktime Player。这已经是一款很牛X的软件了&#xff0c;但他的定位并不是单纯的视频播放软件&#xff0c;而是数字媒体制作平台&#xff0c;可以用于视频格式的转换&#xff0c;视频的录制…

Sql—表格的建立,删除,数据的建立与删除-总结篇

一&#xff0c;Sql—表格的建立&#xff0c;删除&#xff0c;数据的建立与删除 Sql表格的建立公式 If exists (select * from sysobjects where <表名> Drop table <表名> Create table <表名> (<列名1> <数据类型> <约束类型> <是否为…

爬取汽车之家新闻

爬取汽车之家新闻 伪造浏览器向某个地址发送Http请求&#xff0c;获取返回的字符串 response requests.get(url 地址)response.contentresponse.encoding apparent_encodingresponse.textbs4&#xff0c;解析HTML格式的字符串 soup BeautifulSoup(<html>...</html…

Mac OS使用技巧之五:Macbook键盘的使用基础技巧

使用过苹果电脑的朋友应该都知道苹果的台式机和笔记本键盘布局有自己独有的风格&#xff0c;Mac里面的键盘细节就值得我们深深推敲。这篇博客将为一些Mac的新手&#xff0c; 详细介绍一下苹果电脑键盘的基础使用技巧&#xff0c;笔者目前的系统是Mac mavericks。Mac OS按键符号…

需求工程week1

这是第一周&#xff0c;我们小组确定了项目工程的主题&#xff0c;对于需求不清楚的地方与甲方进行了沟通。简单制定了下一周的工作计划。 以下是详细说明&#xff1a; &#xff08;1&#xff09;项目背景和范围 ①背景&#xff1a;在急需志愿活动的今天&#xff0c;在部分个人…

3- 快速上手Linux玩转典型应用- Linux准备工作

4- 准备工作 查看ip ifconfig # 查看ip地址 ipaddr # ip vi /etc/sysconfig/network-scripts/ifcfg-xxyum install net-tools最小化安装的server版本没有ifconfig。使用ip addr tab补全键一次补全。两次提示。 使用pageup pagedown键&#xff0c;翻动。 编辑我们的配置文件将o…

Mac OS使用技巧之六:鼠标和触摸板的使用

本篇说一下Macbook里面鼠标和触摸板的使用&#xff0c;如果你的电脑是台式机&#xff0c;那么使用触摸板可能需要你自己配备Magic Trackpad。在我看来&#xff0c;Mac OS的日常使用基本是不需要鼠标的。Mac OS与触摸板的完美契合是windows系统永远无法企及的。但不排除有些情况…

go run 和 go build 和 go install 命令区别

go run&#xff1a; go run 编译并直接运行程序&#xff0c;它会产生一个临时文件&#xff08;但实际不存在&#xff0c;也不会生成 .exe 文件&#xff09;&#xff0c;直接在命令行输出程序执行结果&#xff0c;方便用户调试。 注意点&#xff1a;需要在main包下执行go run &a…

vue 实例数据绑定 指令 事件

vue.js的模式 mvvm 模式视图层与数据层的双向绑定环境搭建 其一引用 <script src"https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> 复制代码引用之后/创建vue实例 这个实例是整个程序的启动入口 <script src"https://cdn.jsdelivr.ne…

Mac OS使用技巧之七:个性化自己的Mac OS主界面

今天来讲一下个性化自己的主界面。Mac OS的亮点之一就在于它精炼美观的主界面。 Mac OS的界面跟我们熟悉的windows是截然不同的&#xff0c;赋予了桌面新的定义。 能够完美的体现一张牛X的壁纸是有多么的吸引人。&#xff08;图不是我盗的哦&#xff0c;第一张图片加了自己水…

[Codeforces700E Cool Slogans]

简要题意 给出一个长度为n的字符串s[1]&#xff0c;由小写字母组成。定义一个字符串序列s[1....k],满足性质&#xff1a;s[i]在s[i-1] (i>2)中出现至少两次&#xff08;位置可重叠&#xff09;&#xff0c;问最大的k是多少&#xff0c;使得从s[1]开始到s[k]都满足这样一个性…

Google的“机器人情结”:两次合计36亿美元的人工智能收购

据Re/code1月27日消息&#xff0c;Google将收购&#xff08;据知情人透露约4亿美元&#xff0c;未经证实&#xff09;一家人工智能公司DeepMind。DeepMind公司位于英国伦敦&#xff0c;由神经系统科学家DemisHassabis、网络语音通讯软件Skype开发者JaanTallin和研究人员ShaneLe…

Mac OS使用技巧之八:Dock栏使用技巧

本篇博客&#xff0c;我们来讲一下Mac OS的标志性的东西————Dock。在我们的第七篇系列博客里面已经提及了神秘强大的Dock栏。这是苹果的一大亮点。Dock中间偏右侧有一条浅浅的分割线。分割线左侧是APP的图标&#xff0c;在运行的下面会有白色光点。分割线右侧是堆栈&#x…

man:命令帮助使用手册

man&#xff1a;在linux中作为手册存在&#xff0c;含义就是命令的使用手册 在man命令的帮助使用手册中&#xff0c;其中的常用按键及其用途如下所示 按键 用处 空格键 向下翻一页 PaGe down …

报错,但不影响运行ERROR: JDWP Unable to get JNI 1.2 environment, jvm-GetEnv() return code = -2...

eclipse 3.4jdk1.6 编译正常通过&#xff0c;运行debug模式时报错 ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code -2 JDWP exit error AGENT_ERROR_NO_JNI_ENV(183): [../../../src/share/back/util.c:820] 查找该错误原因。发现是重定向输出…