为什么我不能在TCL中这样做:
set path "|C:/Program Files/Example/My Program/prgrm.exe"
字符串路径将获得值:
"C:/Program".
但如果删除空格,它将获得完整路径...... 有人有想法吗?
答案 0 :(得分:8)
这是因为使用管道运行子进程的代码在|
字符后面带有 Tcl列表。像这样构建并运行它:
set path "C:/Program Files/Example/My Program/prgrm.exe"
set pipe [open |[list $path]]
(该列表中的后续项目是传递给prgrm.exe
的参数。)