123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #!/bin/rc
- rfork e
- if(! test -d /n/sources/patch){
- rfork n
- 9fs sources
- }
- pref=''
- builtin cd /n/sources/patch || {
- echo 'can''t cd /n/sources/patch' >[2=1]
- exit no-sources
- }
- if(~ $1 applied saved sorry maybe bad){
- pref=$1^'/'
- shift
- }
- if(~ $#* 0)
- *=(`{
- if(~ $pref *?*)
- builtin cd $pref
- ls -t | grep -v '^(applied|saved|sorry|maybe|bad)$'
- })
- trunc=(sed 5q)
- if(~ $#* 1)
- trunc=cat
- {
- for(i in $*){
- i=$pref^$i
- if(test -f $i/origls)
- cat $i/origls | awk '{$NF="'$i'"; print}'
- if not
- ls -ld $i
- if(patch/okay $i){
- if(test -r $i/email)
- echo from `{cat $i/email}
- cat $i/files | awk '{print " " $1}'
- cat $i/readme | sed 's/^/ /' | $trunc
- if(test -f $i/notes){
- echo
- cat $i/notes
- }
- }
- if not
- echo ' 'bad patch: $status >[2=1]
- echo
- }
- } >/tmp/patchtmp.$pid
- cat /tmp/patchtmp.$pid
- rm -f /tmp/patchtmp.$pid
|