使用tcl脚本获取最新版本

使用tcl脚本获取最新版本,tcl,expression,Tcl,Expression,Nuke是一个用于合成图像序列和mov的应用程序。其文件路径的节点属性允许tcl脚本 替换文件夹a“/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v002”中的实际文件 /show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v002/HJ0022.HJ.seq.234233.mov 这可以使用tcl表达式进行检索 [lindex [lsort -increasing [glob -nocomplain /show

Nuke是一个用于合成图像序列和mov的应用程序。其文件路径的节点属性允许tcl脚本 替换文件夹a“/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v002”中的实际文件

/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v002/HJ0022.HJ.seq.234233.mov

这可以使用tcl表达式进行检索

[lindex [lsort -increasing [glob -nocomplain /show/[getenv SHOW]/shot/[getenv SEQ]/[getenv SHOT]/edt/publish/editref/v002/*.mov]
问题是:

假设有多个文件夹

/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v002
/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v003
/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v004
/show/ABCD/shot/HJ/HJ0022/edt/publish/editref/v005
如何使用tcl表达式以单行形式获取最新的文件夹v005,如上所述~

我试着使用regexp

[lindex [lsort -increasing [glob -nocomplain /show/[getenv SHOW]/shot/[getenv SEQ]/[getenv SHOT]/edt/publish/editref/[regexp -inline "v[0-9]{3}" [value Read1.file] ]/*.mov]
其中Read1是读取节点的名称,但显然这是不正确的,预感是这样的 这不是一个恰当的实施方式。在这里使用regexp的正确方法是什么?或者从最新版本文件夹获取文件的另一种方法是什么~

如何在单个文件夹中使用tcl表达式获取最新文件夹v005 行,如上所述

假设文件路径列表是
lsort
'ed,则对其使用
lindex

lindex [lsort -increasing $files] end

这扩展到其他排序方案,请参见,例如:

如何在单个文件夹中使用tcl表达式获取最新文件夹v005 行,如上所述

假设文件路径列表是
lsort
'ed,则对其使用
lindex

lindex [lsort -increasing $files] end


这扩展到其他排序场景,例如,

您可能想考虑<代码> > LoSe> 标记(区分大小写等),这取决于您的环境。谢谢。你的回答引发了更多的思考。这似乎奏效了。[GLUB-Fix[LoDex[LoStay-[Goub-NoCuffs/Studio/[GETEnVIEW/Studio],[GETEnE-SEQ] / [GETEnV-Studio/Edt/Prime/EddiRf/] ]结束] /*.MOV]您可能需要考虑“代码”> LReS> 标志(区分大小写等),这取决于您的环境。谢谢。你的回答引发了更多的思考。这似乎奏效了。[glob-type f[lindex[lsort-increasing[glob-nocomplain/show/[getenv show]/shot/[getenv SEQ]/[getenv shot]/edt/publish/editref/]]end]/*.mov]