使用 C# 检查文件是否已在 Linux 服务器中使用 .Net Core 更新

Check if file was updated with .Net Core in a Linux Server using C#

我正在做一个 .Net Core 应用程序,它需要检查某些文件最近是否被替换过。基本上检查文件是否被更新的版本替换(它可能是相同的文件或具有相同的大小但由于某种原因被替换)。

我今天 2020 年 3 月 4 日 12:32 下午向服务器上传了一个文件,然后尝试使用 File.GetLastWriteTime 但它给了我 2019 年 2 月 27 日,这可能是文件最初创建的时间或我把它下载到我的电脑上。我尝试了 File.GetLastAccessTime 和 File.GetCreationTime 但我得到了相同的结果:

如果我 运行 stat 我可以看到我需要的日期(更改):

但是我不知道怎么得到它。理想情况下,我会用 C# 获取它,但我想 运行 宁一个 linux 命令来获取这个日期是一个选项。我做了一些研究,发现:stat -c 和 date -r 但它们没有给我所需的日期。

我如何检测文件是否最近被 C# 替换或最坏情况下 linux 命令只会给我 "change" 日期?

我在这里没有得到任何答案,所以我最终从 .Net Core 应用程序中 运行 stat 命令,捕获输出并从 "Change" 部分提取日期。