31 lines
676 B
Bash
Executable file
31 lines
676 B
Bash
Executable file
#!/bin/rc
|
|
# patch/move target patch-tree... - move patch tree(s) to target dir
|
|
rfork e
|
|
pats=/n/sources/patch
|
|
if(~ $#* 0 1){
|
|
echo 'usage: patch/move dst patch-name...' >[1=2]
|
|
exit usage
|
|
}
|
|
|
|
if(! test -d $pats){
|
|
rfork n
|
|
9fs sources
|
|
}
|
|
cd $pats
|
|
|
|
dst=$1
|
|
shift
|
|
for(src){
|
|
patbase = `{basename $src}
|
|
patdest = $dst/$patbase
|
|
if (~ $dst $src $patbase)
|
|
echo $0: skipping $src >[1=2]
|
|
if not if(! test -d $src)
|
|
echo $0: no such patch $pats/$src >[1=2]
|
|
if not if(test -d $patdest)
|
|
echo $0: already have $pats/$patdest >[1=2]
|
|
if not
|
|
ls -ldp $src >$src/origls &&
|
|
mkdir $patdest && dircp $src $patdest && rm -rf $src &&
|
|
test -s $patdest/email && patch/notify $patdest
|
|
}
|