xcat-core/xCAT-client-2.0/sbin/tabedit

46 lines
1.0 KiB
Plaintext
Raw Normal View History

#!/bin/sh
# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html
function cexit {
if [ -d /tmp/tabedit.$$ ]; then
rm -rf /tmp/tabedit.$$;
fi
exit
}
trap cexit 2 15
TABLE=$1
if [ -z "$TABEDITOR" ]; then
TABEDITOR=$EDITOR
fi
if [ -z "$TABEDITOR" ]; then
#echo "WARNING: Define TABEDITOR or EDITOR environment variable before running this command"
TABEDITOR=vi
fi
if [ -z "$TABLE" ]; then
echo "Usage: tabedit <tablename>";
exit 1
fi
mkdir -p /tmp/tabedit.$$/
xcatclientnnr tabdump $1 > /tmp/tabedit.$$/$1.csv
#use md5sum to check if it actually changes..
SUM=`md5sum /tmp/tabedit.$$/$1.csv`
EXIT=0
while [ $EXIT -eq 0 ]; do
cd /tmp/tabedit.$$
"$TABEDITOR" $1.csv
cd -
NEWSUM=`md5sum /tmp/tabedit.$$/$1.csv`
if [ "$NEWSUM" == "$SUM" ]; then
echo "No file modifications detected, not restoring."
break;
fi
if `dirname $0`/tabrestore /tmp/tabedit.$$/$1.csv; then
break;
else
echo "Above errors occured, hit enter to edit, or ctrl-c to abort"
read JNK
fi
done
cexit