我有过去7天的文件列表。从这个列表中,如果某一天有多个文件,我需要使用KornShell(ksh)脚本获取当天的最新文件。
答案 0 :(得分:1)
有些事情:
newest=""
for f in $filelist ; do
if [ "$f" -nt "$newest" ] ; then
newest="$f"
fi
done
答案 1 :(得分:0)
您可以使用以下脚本:
ls -lt | egrep'^([^] + +){5} 2月+3 + 2009'|头-n 1
但如果您使用的是solaris,/ bin / egrep和/ usr / bin / egrep不支持{}字符。我猜这种行为不符合标准。无论如何,在Solaris中,您可以使用:
ls -lt | / usr / xpg4 / bin / egrep'^([^] + +){5} 2月+3 + 2009'|头-n 1 |头-n 1
或
ls -lt | tr -s''| egrep'^ [^] + [^] + [^] + [^] + [^] + 2009年2月3日'|头-n 1
您也可以使用ls和sed。但是在Solaris中,我认为sed不支持扩展的regexp。
当然,将Feb +3 +2009替换为您想要的日期。不要忘记空格后的'+'。