‘壹’ 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
建议楼主下载《Linux就该这么学》,里面有很全面、很系统、很实用的命令介绍,图文形式的,非常适合初学者的。
希望可以帮到您!
‘贰’ linux怎么样显示命令历史后又显示命令的输入时间
linux的bash内部命令history就可以显示命令行的命令历史,默认环境执行 history
命令后,通常只会显示已执行命令的序号和命令本身。
如果想要查看命令历史的时间戳,那么可以执行:
# export HISTTIMEFORMAT='%F %T '
# history | more
1 2008-08-05 19:02:39 service network restart
2 2008-08-05 19:02:39 exit
3 2008-08-05 19:02:39 id
这样显示的格式就变成,序号 - 时间 - 命令行。
history的其他的一些基本功能:
1、使用 HISTSIZE 控制历史命令记录的总行数
将下面两行内容追加到 .bash_profile 文件并重新登录 bash shell,命令历史的记录数将变成 450
条:
# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
2、使用 HISTFILE 更改历史文件名称
默认情况下,命令历史存储在 ~/.bash_history 文件中。添加下列内容到 .bash_profile 文件并重新登录
bash shell,将使用 .commandline_warrior 来存储命令历史:
# vi ~/.bash_profile
HISTFILE=/root/.commandline_warrior
3、使用 HISTCONTROL 从命令历史中剔除连续重复的条目
在下面的例子中,pwd 命令被连续执行了三次。执行 history 后会看到三条重复的条目。要剔除这些重复的条目,可以将
HISTCONTROL 设置为 ignoreps:
# export HISTCONTROL=ignoreps
4、使用 HISTCONTROL 清除整个命令历史中的重复条目
上例中的 ignoreps 只能剔除连续的重复条目。要清除整个命令历史中的重复条目,可以将 HISTCONTROL 设置成
eraseps:
# export HISTCONTROL=eraseps
5、使用 -c 选项清除所有的命令历史
如果你想清除所有的命令历史,可以执行:
# history -c
6、使用 HISTIGNORE 忽略历史中的特定命令
下面的例子,将忽略 pwd、ls、ls -ltr 等命令:
# export HISTIGNORE=”pwd:ls:ls -ltr:”
‘叁’ linux时间戳命令
date指令相关用法示例
date 用法: date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
直接输入date
%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 : 从 1970 年 1 月 1 日 00:00:00 UTC 到当前为为止的秒数
%S : 秒(00..61)
%T : 直接显示时间 (24 小时制)
‘肆’ 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 *查看这个目录所有文件的状态。
‘伍’ linux下怎样更新文件夹下所有文件的时间戳
在Linux中,文件没有“创建时间”这个说法。Linux中的文件的时间属性只有三个:atime(Access time)、mtime(Modified time)、ctime(Change time)。不过,有时有人把ctime理解为create time(创建时间),这是不对的,为什么呢?因为,我们知道一个文件的创建时间只有一次,按这个理论,创建时间是不允许修改的,即一个文件一旦创建,它的ctime值就固定不变;但事实呢?是可以改变的。
atime指用户上次访问该文件(打开文件查看其中的内容)时的时间,只要一个用户访问该文件(不管以什么方式),atime的值都会改变,比如:修改一个文件的内容,必然要先打开文件,然后才会修改其中的内容,所以,修改一个文件时,不但会更新一个文件的mtime值,也会更新atime的值。
mtime指用户上次修改该文件中的内容的时间,只要用户修改该文件中的内容,那么mtime的值就会被更新。
ctime指该文件的属性上次被改变时的时间。要想查看文件的属性,可以通过ls命令查看,比如:ls -l。例如:你修改该文件的权限了或者改变该文件的硬链接数了,ctime的值都会被更新。但是有一点,ctime的值更新,并不代表atime和mtime的值也更新,比如:你修改文件的权限,但并不代表你访问或修改了文件中的内容。
在做一些相应的操作时,文件的atime、mtime、ctime的值都会自动被更新。
正如前面所说,这些值是可以改变的,所以,我们可以通过touch命令来修改这三个属性的值。其实,touch并不是用来创建一个新的、空的文件的,而是用来修改这三个属性的值的。但为什么创建一个新的、空的文件呢?这是touch附带的一个功能,原因是:如果你提供的目标文件参数并不存在的话,那么touch就会出现错误,为了防止这种情况出现,touch命令就会默认创建一个所提供的目标文件参数;其实其他命令也是如此,有些命令,如果用户没有为它提供参数的话,它就会从标准输入设备读取参数,即让用户从标准输入设备输入参数,这样的命令比比皆是。
要想修改一个文件下的所有文件的时间属性,可以用touch命令,提供一个要修改时间属性类型的参数和时间值,然后跟着该文件夹下的所有文件,引用方式是使用 *(星号),它可以匹配一个文件夹下的所有文件。
‘陆’ Linux为什么采用时间戳格式
Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。Unix时间戳不仅被使用在Unix系统、类Unix系统中(比如Linux系统),也在许多其他操作系统中被广泛采用。php中获取时间戳的方法是:time();Date();
Linux中获取时间戳的方法是:date +%s
Linux中将时间戳转换为日期: date -d "@<timestamp>"
‘柒’ Linux下Ping -T 返回的时间戳怎么看
查看gettimeofday
‘捌’ Linux下 ftp命令 文件时间戳会变吗
问题现象:
ftp到一台linux系统中,查看一个文件下的文件清单,发现和文件的实际创建时间(以root用户登录查看的时间)不一致,大约相差8个小时左右。
问题处理方法:
Linux 下的时区是通过建立从/etc/localtime 到 /usr/share/zoneinfo 目录下与您所在时区相符的文件的符号链结实现的。例如,由于我在中国的北京,/etc/localtime就是到/usr/share/zoneinfo/Asia/Shanghai的符号链结。要建立这个链结,运行:
ln -sf /usr/share/zoneinfo/yourzone /etc/localtime
替换yourzone 为形如Asia的文件。看看/usr/share/zoneinfo目录都有什么时区。
我这里运行的是:
ln -sf /usr/share/zoneinfo/Asia /etc/localtime
这里假设/usr/share/zoneinfo 是到/etc/localtime 的链结的前提是Redhat Linux
在旧版本的系统里,您会发现使用/usr/lib/zoneinfo而不是/usr/share/zoneinfo。参考后面“一些应用程序中时间错误”。
‘玖’ linux 查看第几周
pytho代码
printdatetime.datetime(2006,9,4).isocalendar()[1]#Gregorian时间
importdatetime
datetime.datetime(2015,1,5).strftime('%U')#星期天做为州的开始datetime.datetime(2015,1,5).strftime('%W')#星期一做为州的开始
lua代码
print(os.date("%W",os.date(os.time{year=2015,month=1,day=4})))--星期一做为州的开始 想了解更详细的Linux知识可参考书籍《Linux就该这么学》。
‘拾’ linux怎么用c获取当前时间
Linux C编程获取当前时间用time这个函数,time函数会返回一个time_t类型的时间戳(这个time_t类型实际上是一个长整型,定义在time.h头文件中)。time函数的函数原型是这样的:
time_t time(time_t *tloc);
使用time函数需要包含time.h头文件:
#include <time.h>
调用time函数的代码是这样的:
time_t t;
t=time((time_t *) 0);
因为time函数参数的作用和返回值一样,只是用于接收时间戳,所以这里调用time函数可以传入一个空指针,表示只用它的返回值,不用指针参数来接收时间戳。
因为time函数只是返回一个时间戳,如果想打印直观的时间信息,可以把刚才的time_t作为参数调用ctime函数,ctime函数会返回一个字符串,ctime函数的调用是这样的:
printf("The time and date is: %s", ctime(&t));
t就是刚才调用time函数返回的time_t类型变量。