--- /dev/null
+#!/usr/bin/tclsh
+#
+# Usage:
+# prcontext <pattern> <# lines of context>
+# (for platforms that don't have grep -C)
+
+
+#
+# Get the arguments
+#
+set pattern [lindex $argv 0]
+set num [lindex $argv 1]
+
+
+#
+# Get all of the lines in the file.
+#
+set lines [split [read stdin] \n]
+
+set index 0
+foreach line $lines {
+ if { [regexp $pattern $line match matchline] } {
+ if { [ expr [expr $index - $num] < 0 ] } {
+ set bottom 0
+ } else {
+ set bottom [expr $index - $num]
+ }
+ set endLineNum [ expr [expr $index + $num] + 1]
+ while {$bottom < $endLineNum} {
+ set output [lindex $lines $bottom]
+ puts $output
+ set bottom [expr $bottom + 1]
+ }
+ }
+ set index [expr $index + 1]
+}
\ No newline at end of file