我的代碼這一艱鉅塊:寫出的變量文本值到文件
exec zip -r $FULLPATH error.log [ append datetime $RECENT ".bwdb" ] [ append txt $testName ".txt" ] [ append lancap $testName "-lan.cap" ] \
[ append lanmcap $testName "-lan-m.cap" ] [ append wancap $testName "-wan.cap" ] [ append wanmcap $testName "-wan-m.cap" ] [ append conf $confFile ".conf" ] \
start.txt start-lan.cap start-lan-m.cap start-wan.cap start-wan-m.cap [ append comments "comments-" $RECENT ".bwc" ]
這實際上只是荏苒一堆文件一起。我正在改變生成zip文件的方式(更準確地說,當我生成時,我正在更改)。我決定這樣做的方式是將每個命令保存到文本文件中,然後在需要創建文件時通過文件中的每個命令。問題是我有一堆我需要轉換成文字形式的變量。
有誰知道我該如何將此命令轉換爲它的文字值並將其存儲到文本文件中?
編輯:我也願意聽到其他建議,以解決相同的問題,和/或任何利弊做我的建議。
EDIT2:感謝所有幫助,我選擇這樣做:
set data123 "exec zip -r $FULLPATH error.log [ append datetime $RECENT \".bwdb\" ] [ append txt $testName \".txt\" ] [ append lancap $testName \"-lan.cap\" ] \
[ append lanmcap $testName \"-lan-m.cap\" ] [ append wancap $testName \"-wan.cap\" ] [ append wanmcap $testName \"-wan-m.cap\" ] [ append conf $confFile \".conf\" ] \
start.txt start-lan.cap start-lan-m.cap start-wan.cap start-wan-m.cap [ append comments \"comments-\" $RECENT \".bwc\" ]"
set datafile123 "datafile123.txt"
set fileId123 [ open $datafile123 "w" ]
puts $fileId123 $data123
close $fileId123
然而,當我看到生成的文件我看到:
exec zip -r /home/IOL/TR069_Certification/Results/TEST_Round99_GetRPCMethods_CDR1_20130410172812 error.log 20130410172812.bwdb20130410172812".bwdb" GetRPCMethods.txtGetRPCMethods".txt" GetRPCMethods-lan.capGetRPCMethods"-lan.cap" GetRPCMethods-lan-m.capGetRPCMethods"-lan-m.cap" GetRPCMethods-wan.capGetRPCMethods"-wan.cap" GetRPCMethods-wan-m.capGetRPCMethods"-wan-m.cap" IOL.confIOL".conf" start.txt start-lan.cap start-lan-m.cap start-wan.cap start-wan-m.cap comments-20130410172812.bwc"comments-"20130410172812".bwc"
這似乎是製作連接字符串的第二個副本在每個附加的末尾,我無法弄清楚爲什麼。
非常感謝TCL提示。我在工作時只是被扔進了一個tcl項目,而我一直在自我教導自己,所以這些東西偶爾會出現。 – Joshua 2013-04-10 21:34:57