shell常用编程格式
WORKSPACE=$(cd $(dirname $0)/; pwd)
cd $WORKSPACE
mkdir -p var
module=jmxmon
version=0.0.2
app="$module-$version-jar-with-dependencies.jar"
conf=conf.properties
sampleconf=conf.example.properties
pidfile=var/app.pid
logfile=var/app.log
function check_pid() {
if [ -f $pidfile ];then
pid=`cat $pidfile`
if [ -n $pid ]; then
running=`ps -p $pid|grep -v "PID TTY" |wc -l`
return $running
fi
fi
return 0
}
function start() {
check_pid
running=$?
if [ $running -gt 0 ];then
echo -n "$app now is running already, pid="
cat $pidfile
return 1
fi
if ! [ -f $conf ];then
echo "Config file $conf doesn't exist, creating one."
cp $sampleconf $conf
fi
nohup java -cp ./$app com.stephan.tof.jmxmon.JMXMonitor $conf &> $logfile &
sleep 1
running=`ps -p $! | grep -v "PID TTY" | wc -l`
if [ $running -gt 0 ];then
echo $! > $pidfile
echo "$app started..., pid=$!"
else
echo "$app failed to start."
return 1
fi
}
function stop() {
pid=`cat $pidfile`
kill $pid
rm -f $pidfile
echo "$app stoped..."
}
function restart() {
stop
sleep 1
start
}
function status() {
check_pid
running=$?
if [ $running -gt 0 ];then
echo started
else
echo stoped
fi
}
function tailf() {
tail -f $logfile
}
function help() {
echo "$0 start|stop|restart|status|tail"
}
if [ "$1" == "" ]; then
help
elif [ "$1" == "stop" ];then
stop
elif [ "$1" == "start" ];then
start
elif [ "$1" == "restart" ];then
restart
elif [ "$1" == "status" ];then
status
elif [ "$1" == "tail" ];then
tailf
else
help
fi
#!/bin/sh
function install_php {
yum install vim -y
echo -e "---------------------------------------------------"
}
function install_nginx {
yum install gc -y
echo -e "---------------------------------------------------"
}
hile true
do
read -p 'plase input:' num
if [ "$num" == "1" ];then
install_php
elif [ "$num" == "2" ];then
install_nginx
else
echo '输入错误'
fi
done
exit 1