]> git.lizzy.rs Git - plan9front.git/blob - rc/bin/ssam
git: fix non-interruptible temporary warning
[plan9front.git] / rc / bin / ssam
1 #!/bin/rc
2 # ssam - stream interface to sam
3 rfork e
4
5 flagfmt='n,e script,f sfile'
6 args='[ file ... ]'
7 argv0=$0
8 fn usage { echo usage: $argv0 '[ -n ] [ -e script ] [ -f sfile ] [ file ... ]' >[1=2] }
9 if(! ifs=() eval `{aux/getflags $*}){
10         usage
11         exit usage
12 }
13
14 if(~ $#flage 0 && ~ $#flagf 0) {
15         if(~ $#* 0) {
16                 usage
17                 exit usage
18         }
19         flage=$1
20         shift
21 }
22
23 if(~ $#TMPDIR 0)
24         TMPDIR=/tmp
25 tmp=$TMPDIR/ssam.tmp.$user.$pid
26 cat $* >$tmp
27
28 {
29         # select entire file
30         echo ',{'
31         echo k
32         echo '}'
33         echo 0k
34
35         # run scripts, print
36         if(! ~ $#flagf 0)
37                 cat $flagf
38         if(! ~ $#flage 0)
39                 echo $flage
40         if(~ $#flagn 0)
41                 echo ,
42 } | sam -d $tmp >[2]/dev/null
43
44 rm -f $tmp