view master/bin/internal/invoke.sh @ 8:5db6015689a2

slightly updated, 4 W only, versions of old test4.sh and subcount.sh
author Henry S. Thompson <ht@markup.co.uk>
date Mon, 01 Oct 2018 18:29:39 +0000
parents a7637c994964
children 55e953e5c66f
line wrap: on
line source

#!/bin/bash
# Helper for ../wrun, q.v.
# Usage: invoke.sh [-x] me cmd ifile id port ip [args...]
#  Runs 
#   cmd [id] args...
#  via ssh to ip:port
#  If ifile is not /dev/null, feed in as stdin
#  Unless -x, worker id is passed as first arg
if [ "$1" = "-x" ]
then
 shift
 id=
 me=
else
 me=$1
 id=$4
fi
cmd="$2"
ifile=$3
port=$5
ip=$6
shift 6
echo "#$(date)#$cmd#$ifile#$id#$port#$ip#$@#" 1>&2
if [ "$ifile" != "/dev/null" ]
then
  echo "# from $ifile" 1>&2
  scp -P $port $ifile $ip:ifile.txt && \
  ssh -t -p $port $ip "nohup $cmd $id $me ""$@"" > nohup.cc"
else
  ssh -p $port $ip "$cmd $id $me ""$@"
fi || echo ssh failed, status=$? 1>&2
echo "#$(date)#$id#" 1>&2