All pastes #172468 Raw Edit

Anonyme

public text v1 · immutable
·published 2006-09-16 03:32 UTC
rendered paste body
#
# randomline --
# Arg:          A filename
# Returns:      A random line from this file
#
proc randomline { filename } {

  set position [rand [expr [file size $filename] - 1024]]

  set fd [open $filename r]
  catch {
    seek $fd $position
    set text [read $fd 1024]
  }
  close $fd

  set lines [split $text \n]
  set lineno [randrange 1 [expr [llength $lines] - 1]]

  return [lindex $lines $lineno]
}