Tcl 命令查找目录中最新创建的文件夹

Tcl 命令查找目录中最新创建的文件夹

我有一个文件夹,其中有带有日期示例的子文件夹:Parent/2020-11-09_15.47.36 Parent/2020-11-10_16.52.02 等等。现在我想使用 tcl 命令找出父文件夹中最新的日期文件夹。

输出应该是:2020-11-10_16.52.02

答案1

您选择了一种合理的日期时间格式,该格式按词法和时间顺序排序。

在Tcl你会做

cd Parent
set subdirs [glob -type d *]
set last [lindex [lsort $subdirs] end]

如果其中有其他子目录会干扰排序,并且您想将它们过滤掉,您可以执行以下操作:

set subdirs [lmap dir [glob -type d *] {
  if {![regexp {^\d{4}-\d{2}-\d{2}_\d{2}.\d{2}.\d{2}$} $dir]} then continue
  set dir
}]

答案2

lindex [ lsort -decreasing [ glob -type d Parent/* ] ] 0

相关内容