我正在使用这个脚本我希望脚本替换session.mvw文件的第二行所以我要求输入“name”如果我输入2222作为输入我希望我的session.mvw文件的第二行为{{ 1}}
而是它唯一的给予
{GRAPHIC_FILE_1 = "E:/ge work/hyperview scripting/222.rst"}
。
{GRAPHIC_FILE_1 = "E:/ge work/hyperview scripting/${name}.rst"}
答案 0 :(得分:0)
Tcl有一个一般规则,它不会在大括号内进行替换。这通常是正确的。但是,在这种情况下,你需要更多的东西。对于这些类型的情况,有subst
命令 执行那些 subst itutions:
puts $out [subst {GRAPHIC_FILE_1 = "E:/ge work/hyperview scripting/${name}.rst"}]
(注意:如果你用subst
生成Tcl代码,你可能做错了。不是这就是你在这种情况下所做的,但它仍然是对所有读者的警告...... )
答案 1 :(得分:0)
如果你想在值附近有大括号,你可以这样做
setSite
或者
puts $out [list "GRAPHIC_FILE_1 = \"E:/ge work/hyperview scripting/${name}.rst\""]
两者都打印字符串
puts $out "{GRAPHIC_FILE_1 = \"E:/ge work/hyperview scripting/${name}.rst\"}"