#!/bin/sh # Do not echo anything because some scripts use the output as input" usage() { echo echo "usage: $0 |to dir[+]> " echo echo "examples: $0 "p4 sync" //build/$CODELINE/ jar.bom" echo " will do like 'p4 sync //build/oware31/lib/oware.jar'" echo " $0 sum d:/work/jarfiles jar.bom" echo " will do like 'sum d:/work/jarfiles/lib/oware.jar'" echo " $0 "cp -pr" d:/work/build+* d:/work/release raw.bom" echo " will do like 'cp -pr d:/work/build/lib/* d:/work/release/lib'" echo } if [ "$DEBUG" = 0 ] then set -vx fi dir1=`echo $2 | awk -F+ '{print $1}'` dir1plus=`echo $2 | awk -F+ '{print $2}'` dir2=`echo $3 | awk -F+ '{print $1}'` dir2plus=`echo $3 | awk -F+ '{print $2}'` # add / if missing echo $dir1 | grep \/$ || dir1=$dir1/ echo $dir2 | grep \/$ || dir2=$dir2/ if [ $# -gt 4 -o $# -lt 3 ] then echo echo error: incorrect number of parameters passed to bom_operator usage exit 1 elif [ $# -eq 3 ] then # Process unary commands bom=$3 awk -v v1="$1" -v v2="$dir1" -v v3="$dir1plus" '{print v1,v2$1v3";\n"}' $3 >/tmp/oper.x stat=$? else # Process binary commands bom=$4 awk -v v1="$1" -v v2="$dir1" -v v3="$dir1plus" -v v4="$dir2" -v v5="$dir2plus" '{print v1,v2$1v3,v4$1v5";\n"}' $4 > /tmp/oper.x stat=$? fi . /tmp/oper.x stat=`expr $stat + $?` rm -f /tmp/oper.x exit $stat