其实就是,我所有代码都在~/Public里面,本机开nfs,虚拟机挂载nfs到/opt,酱紫我直接启动虚拟机就好,环境都部署在虚拟机中,因为,我OCD晚期…Orz…
写了个脚本自动启动虚拟机然后ssh过去,这个脚本,写的真心虐…
这里是代码:
#!/bin/bash
TMP=`mktemp`
TMP2=`mktemp`
TMP3=`mktemp`
TMP4=`mktemp`
VBoxManage list vms | awk -F \" '{print $2}' > $TMP
ORDER=1
while read LINE
do
echo $ORDER. $LINE
echo "export ORDER_${ORDER}=\"${LINE}\"" >> $TMP2
ORDER=`expr $ORDER + 1`
done < $TMP
source $TMP2
rm $TMP
rm $TMP2
read CHOICE
echo CH=\$ORDER_$CHOICE > $TMP3
source $TMP3
rm $TMP3
echo "Choose $CH, start it right now !"
VBoxHeadless -startvm "$CH" >/dev/null 2>&1 &
b=''
for ((i=0;$i<=100;i+=2))
do
printf "Starting vm: [%-50s]%d%%\r" $b $i
sleep 0.07
b=#$b
done
echo
OUT=`( time -p; ) 2>&1 | grep real | awk -F ' ' '{print $2}' | awk -F '.' '{print $1}'`
RCOUNT='=>'
while [ "$OUT" -lt "3" ];
do
printf "Trying: %s\r" $RCOUNT
RCOUNT='='$RCOUNT
( time -p ssh springhack@127.0.0.1 -p 10022; ) 2>$TMP4
sleep 2.5
OUT=`cat $TMP4 | grep real | awk -F ' ' '{print $2}' | awk -F '.' '{print $1}'`
done
rm $TMP4
VBoxManage controlvm "$CH" poweroff
pkill VBox*
echo Finished !