linux - 如何从文本文件获取Centos安装日期

标签 linux centos redhat centos6 centos5

我发现用这个命令我可以得到Centos的安装日期。

ls -lctd --time-style=+"%d-%m-%Y %H:%M:%S" /etc | tail -1 | awk '{print $6, $7}'

但在我的例子中,我需要从/proc 或其他一些我可以用 Java 读取的文本文件中获取这个值。 是否有任何文本文件可用于读取此值?

最佳答案

But in my case I need to get this value from /proc or some other text file which I can read with Java. Is there any text file that I can use for reading this value?

据我所知,没有。

但是,您应该能够使用 Java 7 文件属性执行与该“shell”命令等效的操作。具体来说,PosixFileAttributes允许您访问创建时间戳。 (这里是关于 Java 7 文件属性 API 的教程 ... http://andreinc.net/2013/12/05/java-7-nio-2-tutorial-file-attributes/ )

我还应该指出,使用“/etc”的创建时间戳作为安装日期/时间的代理有点可疑。该目录可以从备份中恢复...或者可以使用 touch 或等效方法更改时间戳。


更新

您找到的替代解决方案涉及运行外部命令 rpm -qi basesystem。您可以使用 ProcessBuilder 等从 Java 运行该命令...然后解析输出。但是,rpm 命令使用的是来自 RPM 数据库的信息,我不知道是否有 Java 库可以让您直接访问该信息……而无需付出大量额外努力。

关于linux - 如何从文本文件获取Centos安装日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23337559/

相关文章:

Docker - 将文件从主机上的外部位置复制到容器中

linux - TCPv4 源端口和目标端口是否可以相互冲突?还是源端口和目标端口位于它们自己的地址空间中?

wordpress - Plesk 从转储中恢复

不应该循环的代码(带 fork )正在循环

centos - Xen + libvirt : VM name 'Domain-Unnamed' already exists

linux - 主机对本地主机进行不必要的 dns 查找

centos - Yum 没有为 CentOS 7.7 提供最新的 FreeIPA (4.8.7)

linux - 在 Linux 6 中运行 ./runInsaller for Oracle 11g 安装无法使用命令执行自动检查显示颜色

linux - 如何从 bash shell 脚本子例程返回数据?

c - Linux C中的段错误