merge
This commit is contained in:
commit
ca58f1df17
3 changed files with 61 additions and 0 deletions
25
rc/bin/"
Normal file
25
rc/bin/"
Normal 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
13
rc/bin/""
Normal 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
23
rc/bin/g
Normal 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
|
Loading…
Reference in a new issue