我在config.txt文件.I中有一个交换机配置,我用set fd [open config.txt r]和o/p of puts $fd将这个文件打开到tcl中,
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谁能告诉我怎么做,因为这个文件非常大,我想使更多的可读性。
提前感谢
发布于 2012-12-19 22:07:48
如果我理解正确的话,您希望结果文件包含源文件中的所有行,由空行分隔。这可以通过向源文件中的每一行附加一个额外的换行符(\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-20 06:54:43
我认为另一种方法可能是:
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这不会向文件的最后一行添加额外的新行:)
https://stackoverflow.com/questions/13953667
复制相似问题