gpt4 book ai didi

linux - 想要显示某些文件的创建时间。

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:57:12 24 4
gpt4 key购买 nike

我正在编写 perl 并在窗口系统中运行它非常好。但是当我将 perl 脚本从 Windows 系统传输到 Linux 时。在 Linux 系统中运行,我得到错误的日期/时间。需要一些帮助。谢谢。

Perl 中的源代码

   if (($file =~ m/(\d)(\S+)\.csv/) && ($flag == 0))  
{
open(para_file,$file);
$datetime_string = ctime( stat($file)->ctime );

while ($line=<para_file>)
{
if ($line =~ /0\,170\,16\,/)
{
$cal = $cal + 1;
}
}
push(@data,"$cal");
push(@data,"$datetime_string");
}

$file 将是我的文件名。创建时的 Windows 日期和时间是正确的,但不明白为什么在 LINUX 中它给我错误的日期和时间。

生成的输出,来自windows

9023-0 50000 5111 10.22 2014 年 7 月 21 日星期一 17:44:38
9023-2 100000 23251 23.25 2014 年 4 月 11 日星期五 10:12:19
9024_AHG 5000 0 0.00 2014 年 11 月 27 日星期四 15:28:55

生成的输出,来自 linux

9023-0 50000 5111 10.22 2015 年 7 月 30 日星期四 16:45:25
9023-2 100000 23251 23.25 2015 年 7 月 30 日星期四 16:45:25
9024_AHG 5000 0 0.00 2015 年 7 月 30 日星期四 16:45:25

最佳答案

这里的问题不是你在做什么,而是你误解了 ctime 是什么。 Linux 文件系统记录更改 时间而不是创建 时间。

mtime表示修改文件内容。 ctime表示修改属性。因此,它们很可能是相同的数字。

但是您不能得到的是“创建时间”,因为 EXT 文件系统不记录它。 (其他文件系统格式可能 - 例如 NTFS - 但我不确定我是否建议在 Linux 机器上使用 NTFS!)

关于linux - 想要显示某些文件的创建时间。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com