Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

To search for specific lines within a file using tcl, you can use the open, gets, and close commands. Here is an example code snippet that searches for all lines that contain the string "hello" and prints them out:

set input_file "example.txt"

set file_id [open $input_file r]

while {[gets $file_id line] != -1} {
  if {[string first "hello" $line] != -1} {
    puts $line
  }
}

close $file_id

In this code:

  • set input_file "example.txt" sets the name of the input file.
  • set file_id [open $input_file r] opens the file for reading and assigns a file identifier to file_id.
  • while {[gets $file_id line] != -1} reads each line of the file until the end of the file is reached (gets returns -1).
  • if {[string first "hello" $line] != -1} checks if the line contains the string "hello" using string first.
  • puts $line prints out the line if it contains "hello".
  • close $file_id closes the file once all lines have been read.