# HG changeset patch # User stanley.lieber@gmail.com # Date 1592266976 14400 # Mon Jun 15 20:22:56 2020 -0400 # Node ID 29de48ebc54c155425211eb1a9017c8beac20c3f # Parent 93c1b30ff3a0ac3d0a2785186a173dbc062cdc3f add bin/contrib/fix-rc-scripts (thanks, Ethan Gardner) diff --git a/bin/contrib/fix-rc-scripts b/bin/contrib/fix-rc-scripts new file mode 100755 --- /dev/null +++ b/bin/contrib/fix-rc-scripts @@ -0,0 +1,27 @@ +#!/usr/local/plan9/bin/rc + +# Fix rc shell scripts to find rc without launching env every time. +# Invoke with rc and plan9 versions of grep and ed in $PATH + +# If your system lacks which (e.g. some gnu/linux) +# substitute the full path to rc in this line: +rc=/usr/local/plan9/bin/rc +firstline='#!'$"rc + +if(~ $#* 0) files = * +if not files = $* + +myname = `{basename $0} + +for(file in $files) { + if(test -d $file) $0 $file/* + if not if(~ $file *$myname) {} + if not if(sed 1q $file | grep '^#!/.*[/ ]rc$' > /dev/null) { + { + echo 1c + echo $firstline + echo . + echo wq + } | ed $file > /dev/null + } +}