如何在带有 Exec 的 TCL 中使用 Xargs

How to use Xargs in TCL with Exec

如何在 TCL 中使用 Xargs 和 Exec,

例如,

xargs -I{} basename {}

我有这样的 xargs 语句,我如何在 TCL 中使用它与 Exec,

exec xargs -I{} basename {}

无法正常工作。

谢谢,

在这种情况下,{} 对 Tcl 来说是特殊的(它是标准的 Tcl 元语法)所以你需要在 some 中用双引号或反斜杠引用它个案。否则没有害处:

exec xargs -I{} basename "{}"
exec xargs -I\{\} basename \{\}

尤其是它本身会引起问题; Tcl 认为这意味着在那里传递一个空字符串作为参数(这是合法的,但不是你真正的意思)。请记住:Tcl 的语法是 而不是 Unix shell 的语法。它们可能表面上看起来很相似,但它们实际上是不同的。