#!/bin/sh

HOSTLISTFILE="/usr/local/bin/hadoop"

#Error display function
Error_Show() {
 case "$1" in
  1) echo 'Usage: psh node[,node] command';;
  2) echo "psh::Hostlist file not exist";;
  *) echo 'psh:Unknown Error';;
 esac
 exit 1
}

[ "$#" -lt "2" ]&&Error_Show 1
[ ! -f "$HOSTLISTFILE" ]&&Error_Show 2

NODELIST=$(cat "$HOSTLISTFILE" | egrep $(echo $1 | sed "s/,/|/g") | awk '{print $1}')
shift
for NAME in $NODELIST
do
 ssh -q -x "$NAME" $* >&1 | sed "s/^/"`echo $NAME|cut -f 1 -d '.' | cut -c -15`:" /g"
done

+ Recent posts