Tcl 将变量值设置为带有[]方括号的字符串

Tcl 将变量值设置为带有[]方括号的字符串,tcl,Tcl,我正试图通过我的tcl脚本编写一个文件(file.txt),其中包含以下内容 $ cat file.txt create_library_domain TIMING set_attribute library ./sc9mc.lib [find /libraries -library_domain TIMING] exit 简单字符串很好,它们可以被双引号引用并作为变量传递给put命令,但带大括号的字符串不存储在变量中:[find/libraries-library\u domain TIMI

我正试图通过我的tcl脚本编写一个文件(file.txt),其中包含以下内容

$ cat file.txt
create_library_domain TIMING
set_attribute library ./sc9mc.lib [find /libraries -library_domain TIMING]
exit
简单字符串很好,它们可以被双引号引用并作为变量传递给put命令,但带大括号的字符串不存储在变量中:
[find/libraries-library\u domain TIMING]
我尝试使用
\
对其进行转义,但这对我也不起作用

代码:

请提出解决方案。

逃跑两次

set evt "\\\[find /libraries -library_domain TIMING\\\]"
逃跑两次

set evt "\\\[find /libraries -library_domain TIMING\\\]"
逃跑两次

set evt "\\\[find /libraries -library_domain TIMING\\\]"
逃跑两次

set evt "\\\[find /libraries -library_domain TIMING\\\]"

如果您想在文件中单独打印单词
[find/libraries-library\u domain TIMING]
,则左方括号
[
在使用双引号时应使用反斜杠转义一次。或者,您可以改为使用大括号

% set evt "\[find /libraries -library_domain TIMING]"
[find /libraries -library_domain TIMING]
% set evt {[find /libraries -library_domain TIMING]}
[find /libraries -library_domain TIMING]
%

注意:如果您想在文件中单独打印单词
[find/libraries-library\u domain TIMING]
,则无需转义右方括号

<[在使用双引号时应使用反斜杠转义一次。或者,您可以使用大括号代替

% set evt "\[find /libraries -library_domain TIMING]"
[find /libraries -library_domain TIMING]
% set evt {[find /libraries -library_domain TIMING]}
[find /libraries -library_domain TIMING]
%

注意:如果您想在文件中单独打印单词
[find/libraries-library\u domain TIMING]
,则无需转义右方括号

<[在使用双引号时应使用反斜杠转义一次。或者,您可以使用大括号代替

% set evt "\[find /libraries -library_domain TIMING]"
[find /libraries -library_domain TIMING]
% set evt {[find /libraries -library_domain TIMING]}
[find /libraries -library_domain TIMING]
%

注意:如果您想在文件中单独打印单词
[find/libraries-library\u domain TIMING]
,则无需转义右方括号

<[在使用双引号时应使用反斜杠转义一次。或者,您可以使用大括号代替

% set evt "\[find /libraries -library_domain TIMING]"
[find /libraries -library_domain TIMING]
% set evt {[find /libraries -library_domain TIMING]}
[find /libraries -library_domain TIMING]
%

注意:我们不需要转义右方括号
]

是否要转义方括号
[]
,以便它们不能被视为
tcl
命令?是的,我们只想将其作为字符串放在file.txt中。是否要转义方括号
[]
以便它们不能被视为
tcl
命令?是的,完全正确,只想将其作为字符串放在file.txt中。是否要转义方括号
[]
以便它们不能被视为
tcl
命令?是的,完全正确,只想将其作为字符串放在file.txt中。是否要转义方括号
[]
这样它们就不能被当作
tcl
命令了吗?是的,完全正确,只想把它作为字符串放在file.txt中。@RomanMishin:这将返回
\[find/libraries-library\u domain TIMING\]
。OP想写
[find/libraries-library\u domain TIMING]
在文件中。即没有反斜杠@romamishin:这将返回
\[find/libraries-library\u domain TIMING\]
。OP希望在文件中写入
[find/libraries-library\u domain TIMING]
。即没有反斜杠@romamishin:这将返回
\[find/libraries-libraries\u domain TIMING\]
。OP希望在文件中写入
[find/libraries-library\u domain TIMING]
。即不带反斜杠@romamishin:这将返回
\[find/libraries-library\u domain TIMING\]
。OP希望在文件中写入
[find/libraries-library\u domain TIMING]
。即不带反斜杠