我想按 raku 中最后修改的文件对目录进行排序。我得到这样的文件列表:
"directory/".IO.dir;
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法可以做到这一点?
该IO::Path对象有一个.modified方法返回Instant目录条目已修改。
将所有这些结合起来:
say "$_: $_.modified.DateTime()" for "lib".IO.dir.sort(*.modified);
Run Code Online (Sandbox Code Playgroud)
您将获得“lib”目录中的文件列表,其中的修改DateTime按升序排列。
要按降序排列,请使用-*.modified或调用.reverse结果。
至于排序性能:当您sort使用接受单个参数的 Callable 进行调用时,它会在幕后为您执行Schwartzian 转换。