我在Windows 7机器上使用TCL。我需要通过move
调用Windows exec
命令。但是我无法让它发挥作用。
我知道TCL具有file rename
能力,但由于我无法进入的原因,我被要求使用Windows move
CLI。
当我使用带移动的auto_execok
时,该命令返回一个空字符串。我也试过{*},但它永远不会奏效。
% info tclversion
8.6
%
% move src dest
invalid command name "move"
%
% [auto_execok move] src dest
ambiguous command name "": after append apply array auto_execok auto_import auto _load auto_load_index auto_qualify binary break case catch cd chan clock close c oncat continue coroutine dict encoding eof error eval exec exit expr fblocked fc onfigure fcopy file fileevent flush for foreach format gets glob global history if incr info interp join lappend lassign lindex linsert list llength lmap load l range lrepeat lreplace lreverse lsearch lset lsort namespace open package pid pr oc puts pwd read regexp regsub rename return scan seek set socket source split s tring subst switch tailcall tclLog tell throw time trace try unknown unload unse t update uplevel upvar variable vwait while yield yieldto zlib
%
我还使用auto_execok
查看了info body auto_execok
命令的内容,看起来他们似乎没有将'move'添加到支持命令列表中.... / p>
有关如何从TCL程序与Windows move
命令进行交互的任何建议吗?
答案 0 :(得分:2)
move
内置了cmd
吗?你可以试试:
exec {*}[auto_execok cmd] /c move src dest
我现在没有窗框可以测试。