0

我在 config.txt 文件中有一个开关配置。我已经用set fd [open config.txt r]and 和 o/p 将此文件打开到 tcl 中puts $fd

switchport
switchport access vlan 333
switchport mode access
switchport port-security
switchport port-security maximum 5

现在我想将此 o/p 解析为另一个名为 newconfig.txt 的文件,它应该如下所示,

switchport

switchport access vlan 333

switchport mode access

switchport port-security

switchport port-security maximum 5

谁能告诉我怎么做,因为这个文件非常大,我想让它更具可读性。

提前致谢

4

2 回答 2

2

如果我理解正确,您希望生成的文件包含源文件中的所有行,并用空行分隔。这可以通过在源文件的每一行附加一个额外的换行符 ( \n) 并将其写入结果文件来完成,如下所示:

set in [open config.txt]
set out [open newconfig.txt w]

while {[gets $in line] >= 0} {
   append line \n
   puts $out $line
}
close $in
close $out
于 2012-12-19T14:07:48.467 回答
0

我认为替代方法可能是:

set in    [open config.txt]
set out   [open newconfig.txt w]
set data  [read $in]
puts $out [join [split $data "\n"] "\n\n"]
close $in
close $out

这不会在文件的最后一行添加额外的新行:)

于 2012-12-19T22:54:43.100 回答