Awk 正在将ls-ltr的输出转换为日期格式%m%d%H:%m

Awk 正在将ls-ltr的输出转换为日期格式%m%d%H:%m,awk,Awk,我正在编写一个awk脚本,用于获取修改日期,然后对其进行转换,但在将ls-lrt的输出转换为日期格式“月/日小时:日期”时遇到问题 我的awk脚本:- awk 'BEGIN{ "ls -lrt "ARGV[1] "| awk '{\"print $6$7$8\" +\"%Y%m/%d %H:%M\"}'" | getline cdatefile1 } { print cdatefile1 }' file1 假设GNUls,则需要--时间样式选项: $ touch afile

我正在编写一个awk脚本,用于获取修改日期,然后对其进行转换,但在将
ls-lrt
的输出转换为日期格式“月/日小时:日期”时遇到问题

我的awk脚本:-

awk 'BEGIN{
    "ls -lrt "ARGV[1] "| awk '{\"print $6$7$8\" +\"%Y%m/%d %H:%M\"}'" | getline cdatefile1
    }
{
 print cdatefile1
}' file1

假设GNU
ls
,则需要
--时间样式
选项:

$ touch afile
$ ls -l afile
-rw-r--r-- 1 jackman jackman 0 Apr  2 08:54 afile
$ ls -l --time-style='+%m%d %H:%M' afile
-rw-r--r-- 1 jackman jackman 0 0402 08:54 afile

如果设置了导出LC\u TIME=POSIX,则默认时间格式为:
“+%b%e%H:%M”
对于小于6个月的文件,
“+%b%e%Y”
否则。