如何从另一个tcl脚本运行tcl脚本,而不在主脚本中寻找源代码?

如何从另一个tcl脚本运行tcl脚本,而不在主脚本中寻找源代码?,tcl,Tcl,我试图从main.tcl文件运行test.tcl文件,但没有对其进行寻源,并且我得到一个错误,即没有文件或目录,即使两个脚本位于同一目录中 main.tcl script content: tclsh test.tcl exec "C:\\Tcl\bin|\test.tcl" tclsh test.tcl test.tcl script content: puts "Executed Second script" 我尝试了exec命令和tclsh命令,但都不起作

我试图从main.tcl文件运行test.tcl文件,但没有对其进行寻源,并且我得到一个错误,即没有文件或目录,即使两个脚本位于同一目录中

  main.tcl script content: 
  tclsh test.tcl
  exec "C:\\Tcl\bin|\test.tcl"
  tclsh test.tcl

  test.tcl script content: 
  puts "Executed Second script" 

我尝试了exec命令和tclsh命令,但都不起作用。你能提出一些处理这件事的办法吗

保持test.tcl不变。将main.tcl更改如下。它假定test.tcl和main.tcl位于同一文件夹中。如果确实使用完整路径或相对路径,请注意,在使用\folder\subdir时,需要使用双斜杠\\folder\\subdir,或者只使用单正斜杠(Tcl具有*nix原点)/folder/subdir

puts "From main.tcl launching test.tcl"
set result  [exec [info nameofexecutable] test.tcl]
puts $result
从命令行类型:

tclsh.exe main.tcl
结果如下所示:

From main.tcl launching test.tcl
Executed Second script

保持test.tcl不变。将main.tcl更改如下。它假定test.tcl和main.tcl位于同一文件夹中。如果确实使用完整路径或相对路径,请注意,在使用\folder\subdir时,需要使用双斜杠\\folder\\subdir,或者只使用单正斜杠(Tcl具有*nix原点)/folder/subdir

puts "From main.tcl launching test.tcl"
set result  [exec [info nameofexecutable] test.tcl]
puts $result
从命令行类型:

tclsh.exe main.tcl
结果如下所示:

From main.tcl launching test.tcl
Executed Second script

可能需要使用
设置结果[exec[info nameofexecutable]test.tcl]
而不是硬编码“tclsh.exe”,谢谢。我会检查并回复您。可能需要使用
设置结果[exec[info nameofexecutable]test.tcl]
而不是硬编码“tclsh.exe”谢谢。我会查一查再给你回复。