Solaris + 显示文件时间戳[年][月][日]

yae*_*ael 6 ls solaris date timestamps

我有 Solaris 10 机器

我需要验证 Solaris 机器中某个文件的时间戳

并获得以下格式

 [year][month][day]
Run Code Online (Sandbox Code Playgroud)

Linux 上的工作命令示例

  ls -l --time-style=+%Y%m%d /etc/hosts | awk '{print $6}'
  20121107   <----- ( expected results )           
Run Code Online (Sandbox Code Playgroud)
  • 备注我不能在我的solaris机器上安装gnu ls!

在我的 Solaris 机器上,我尝试了以下命令,但它们都不起作用(因为 Solaris 标志与 Linux 不同),并且我的 Solaris 中未定义 stat 命令

# ls -l -T -D %Y%m%d /etc/hosts
ls: illegal option -- T
ls: illegal option -- D
usage: ls -1RaAdCxmnlhogrtuvVcpFbqisfHLeE@ [files]
Run Code Online (Sandbox Code Playgroud)

# stat /etc/hosts | awk '/Access/{print $2}' | tail -n1 | tr -d'' '-'
ksh: stat:  not found
Run Code Online (Sandbox Code Playgroud)

请建议是否有其他方法可以获取文件的戳日期(不是通过 ls 或 stat 命令),也许是使用 date 命令?为了给我解决方案,

如下:

   <solaris>   command /etc/hosts 

               [year][month][day]
Run Code Online (Sandbox Code Playgroud)

小智 7

在 Solaris (>= 10) 中,ls 命令具有 -E 选项。所以你的命令可以像ls -E /etc/hosts 或 一样简单 ls -E /etc/hosts | awk '{print $6}'| sed 's#-##g'

以获得所需的结果。