This commit is contained in:
cinap_lenrek 2011-11-24 00:04:36 +01:00
commit ca58f1df17
3 changed files with 61 additions and 0 deletions

25
rc/bin/" Normal file
View file

@ -0,0 +1,25 @@
#!/bin/rc
rfork en
if(test -r /mnt/acme/acme/body)
bind /mnt/acme/acme/body /dev/text
PROMPT='[^ ]*%[ ]+'
fn cmds {
grep '^'$PROMPT'[^"]' /dev/text | sed 's/^/ /'
}
switch($#*) {
case 0
cmds | tail -1
case *
cmds | grep '^ '$PROMPT^$"* | {echo; cat} |
pr -t -n | sort -nr | sort -u +1 | sort -n |
sed 's/^ *[0-9]+ //' | grep .
}
# the silly {echo; cat} gets around pr printing "empty file" when
# presented with no input.

13
rc/bin/"" Normal file
View file

@ -0,0 +1,13 @@
#!/bin/rc
PROMPT='[^ ]*%+[ ]+'
_x = `{" $* | tail -1}
if(~ $#_x 0) {
echo no such command found
exit notfound
}
echo ' ' $_x
_x=`{ echo -n 'eval '; echo $_x | sed 's/^'$PROMPT'//'}
rc -c $"_x

23
rc/bin/g Normal file
View file

@ -0,0 +1,23 @@
#!/bin/rc
flags=()
while(! ~ $#* 1 && ~ $1 -* && ! ~ $1 --){
flags=($flags $1);
shift
}
if(~ $1 --)
shift
switch($#*){
case 0
echo 'usage: g [flags] pattern [files]' >[1=2]
exit usage
case 1
pattern=$1
files=(`{ls *.[bcChm] *.cc *.py *.tex *.ms *.java >[2]/dev/null})
case *
pattern=$1
shift
files=($*)
}
grep -n $flags -- $pattern $files /dev/null