linux指令(stat date cal)


一、stat指令
ls 命令可能是每一个 Unix 使用者第一个学习的命令之一, 但它仅仅显示了 stat 命令能给出的信息的一小部分。
这里ll显示的时间仅仅是文件修改的时间
stat 命令从文件的索引节点获取信息。使用 stat 命令, 你会看到下面这些:

正如你可能已经了解的那样, 每一个系统里的文件都存有三组日期和时间, 它们包括最近修改时间(即使用 ls -l 命令时显示的日期和时间), 最近状态改变时间(包括对文件重命名)和最近访问时间。
access time ,modify time:  ,change time
既然已经知道了这三个时间的属性那么我们就可以对它进行修改
(1)、修改access time的时间(表示我们最后一次访问(仅仅是访问,没有改动)文件的时间 )
(2)修改change time时间(表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等 )
(3).modify time (表示我们最后一次修改文件的时间 )

 由此,我们可以知道

1,当我们仅仅只是读取文件时,access time 改变,而modify,change time 不会改变

2,当修改文件时,access,modify,change time 都会跟着改变

3,当修改文件属性时,change time 改变,而access,modify time 不变。

如果我们喜欢的话, 我们也可以通过其他命令来获取这些信息。

stat 命令也可应用与文件夹。
在这个例子中, 我们可以看到有许多的链接。
 stat 命令还可以一次显示所有我们想要的信息。 下面的例子中, 我们只想查看文件类型, 然后是硬连接数。

在下面的例子中, 我们查看了文件权限 -- 分别以两种可用的格式 -- 然后是文件的 SELinux 安全环境。最后,我们我们可以以从 Epoch 开始的秒数格式来查看文件访问时间。
1.$ stat --format=%a trythats
2.700
3.$ stat --format=%A trythat
4.-rwx------
5.$ stat --format=%C trythat
6.(null)
7.$ stat --format=%X bin
8.1411282845

下面全部是可用的选项:
1.%a 八进制表示的访问权限
2.%A 可读格式表示的访问权限
3.%b 分配的块数(参见%B)
4.%B %b 参数显示的每个块的字节数
5.%d 十进制表示的设备号
6.%D 十六进制表示的设备号
7.%f 十六进制表示的Raw模式
8.%F 文件类型
9.%g 属主的组 ID
10.%G 属主的组名
11.%h 硬连接数
12.%i Inode号
13.%n 文件名
14.%N 如果是符号链接,显示器所链接的文件名
15.%o I/O 块大小
16.%s 全部占用的字节大小
17.%t 十六进制的主设备号
18.%T 十六进制的副设备号
19.%u 属主的用户 ID
20.%U 属主的用户名
21.%x 最后访问时间
22.%X 最后访问时间,自Epoch开始的秒数
23.%y 最后修改时间
24.%Y 最后修改时间,自Epoch开始的秒数
25.%z 最后改变时间
26.%Z 最后改变时间,自Epoch开始的秒数

针对文件系统还有如下格式选项:
1.%a 普通用户可用的块数
2.%b 文件系统的全部数据块数
3.%c 文件系统的全部文件节点数
4.%d 文件系统的可用文件节点数
5.%f 文件系统的可用节点数
6.%C SELinux的安全上下文
7.%i 十六进制表示的文件系统 ID
8.%l 文件名的最大长度
9.%n 文件系统的文件名
10.%s 块大小(用于更快的传输)
11.%S 基本块大小(用于块计数)
12.%t 十六进制表示的文件系统类型
13.%T 可读格式表示的文件系统类型

二、date指令

时间相关:date显⽰示:

date指定格式显⽰示时间:date +%Y_%m_%ddate +%Y:%m:

%d

date命令本⾝身提供了⽇日期的加减运算

date⽤用法:date [OPTION]... [+FORMAT]


date [-u|--utc|--universal] [MMDDhhmm[[CC]YY]

[.ss]]


date可以⽤用来显⽰示或设定系统的⽇日期与时间。

1.在显⽰示⽅方⾯面,使⽤用者可以设定欲显⽰示的格式,格式设定为⼀一个加号后接数个标记,其中可⽤用的标记列表如下: 


%n :下⼀一⾏行

%t :跳格

%H :⼩小时(00..23)


%I :⼩小时(01..12)


%k :⼩小时(0..23)


%l :⼩小时(1..12)


%M :分钟(00..59)


%p :显⽰示本地AM PM


%r :直接显⽰示时间(12 ⼩小时制,格式为hh:mm:ss [AP]M)


%s :19701⽉月1⽇日00:00:00 UTC到⺫⽬目前为⽌止的秒数

%S :(00..61)


%T :直接显⽰示时间(24 ⼩小时制)


%X :相当于%H:%M:%S


%Z :显⽰示时区%a : 星期⼏几 (Sun..Sat)


%A :星期⼏几(Sunday..Saturday)


%b :⽉月份(Jan..Dec)


%B :⽉月份(January..December)


%c :直接显⽰示⽇日期与时间

%d :⽇日(01..31)


%D :直接显⽰示⽇日期(mm/dd/yy)


%h :%b


%j :⼀一年中的第⼏几天(001..366)


%m :⽉月份(01..12)


%U :⼀一年中的第⼏几周(00..53) (Sunday 为⼀一周的第⼀一天的情形)


%w :⼀一周中的第⼏几天(0..6)


%W :⼀一年中的第⼏几周(00..53) (Monday 为⼀一周的第⼀一天的情形)


%x :直接显⽰示⽇日期(mm/dd/yy)


%y :年份的最后两位数字(00.99)
%Y : 完整年份 (0000..9999) 在设定时间⽅方⾯面
date -s //设置当前时间,只有root权限才能设置,其他只能查看。

date -s 20080523 //设置成20080523,这样会把具体时间设置成空
00:00:00
date -s 01:01:01 //设置具体时间,不会对⽇日期做更改
date -s “01:01:01 2008-05-23″ //这样可以设置全部时间

date -s “01:01:01 20080523″ //这样可以设置全部时间

date -s “2008-05-23 01:01:01″ //这样可以设置全部时间

date -s “20080523 01:01:01″ //这样可以设置全部时间
3.加减
date +%=Y%m%d         //显⽰示现在天年⽉月⽇日
date +%Y%m%d --date="+1 day"  //显⽰示后⼀一天的⽇日期

date +%Y%m%d --date="-1 day"  //显⽰示前⼀一天的⽇日期
date +%Y%m%d --date="-1 month"  //显⽰示上⼀一⽉月的⽇日期

date +%Y%m%d --date="+1 month"  //显⽰示下⼀一⽉月的⽇日期
date +%Y%m%d --date="-1 year"  //显⽰示前⼀一年的⽇日期

date +%Y%m%d --date="+1 year"  //显⽰示下⼀一年的⽇日期

时间戳


时间->时间戳:date +%s时间戳->时间:date +%Y:%m:%d  -d @1425384141 Unix时间戳(英⽂文为Unix epoch, Unix time, POSIX timeUnix timestamp)是从19701⽉月1⽇日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
实例如下:

三、cal指令
cal 命令可以⽤用来显⽰示公历(阳历)⽇日历。公历是现在国际通⽤用

的历法,⼜又称格列历,通称阳历。阳历⼜又名太阳历,系以地球绕⾏行太阳⼀一周为⼀一年,为⻄西⽅方各国所通⽤用,故⼜又名⻄西历。命令格式:

cal [参数][⽉月份][年份]

命令功能:

⽤用于查看⽇日历等时间信息,如只有⼀一个参数,则表⽰示年份

(1-9999),如有两个参数,则表⽰示⽉月份和年份

命令参数:
        1   显示一整年的时间

-1显⽰示⼀一个⽉月的⽉月历

-3显⽰示系统前⼀一个⽉月,当前⽉月,下⼀一个⽉月的⽉月历

  1. 显⽰示星期天为⼀一个星期的第⼀一天,默认的格式

-m显⽰示星期⼀一为⼀一个星期的第⼀一天

-j 显⽰示在当年中的第⼏几天(⼀一年⽇日期按天算,从1⽉月1号算起,默认显⽰示当前⽉月在⼀一年中的天数)

-y  显⽰示当前年份的⽇日历
⽰例:
 
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值