Posted to tcl by noone at Wed Dec 05 19:38:21 GMT 2007view raw

  1. proc RemoveLine {searchPhrase} {
  2. set filename "/root/test.txt"
  3. set tmpname "/root/tmp.txt"
  4. set source [open $filename]
  5. set content [read $source]
  6. close $source
  7. set lines [split $content \n]
  8. set match [lsearch -exact $lines $searchPhrase]
  9. if {$match != -1} {
  10. set lines [lreplace $lines $match $match]
  11. set destination [open $tmpname w]
  12. puts -nonewline $destination [join $lines \n]
  13. close $destination
  14. file rename -force $tmpname $filename
  15. }
  16. }
  17.  

Comments

Posted by vigilant at Wed Dec 05 19:51:26 GMT 2007 [text] [code]

if {[lindex $t 0] == "delete" && [lindex $t 1] != ""} { set filename "deftest.txt" set tmpname "deftopics.txt" set source [open $filename] set content [read $source] close $source set searchPhrase [lindex $t 1] set lines [split $content \n] set match [lsearch -exact $lines $searchPhrase] if {$match != -1} { set lines [lreplace $lines $match $match] set destination [open $tmpname w] puts -nonewline $destination [join $lines \n] close $destination file rename -force $tmpname $filename } } doesnt work