使用Tomcat/Eclipse调试的时候,经常会发生关闭不正常,非要使用 ps -elf|grep tomcat , kill -9 这样的操作,费时费劲,因此产生出写个shell ,希望直接命令去做个事情,以下为正个shell调试过程经历
在/usr/bin vim tomcatstop.sh
1 #!/bin/bash
2 ppid=`ps -elf|grep tomcat|grep -v "grep" | awk '{print " " ,$4}' `
3 for i in ${ppid[@]}
4 do
5 echo $i
6 done
chmod 777 tomcatstop.sh
sh tomcatstop.sh
tomcatstop.sh: 3: tomcatstop.sh: Bad substitution
改进
1 #!/bin/bash
2 ppid=`ps -elf|grep tomcat|grep -v "grep" | awk '{print " " ,$4}' `
3 echo $ppid
4 for i in "$ppid"
5 do
6 echo "$ppid"
7 done
再改进
1 #!/bin/bash
2 ppid=`ps -elf|grep tomcat|grep java|grep -v "grep" | awk '{print " " ,$4}' `
3 echo $ppid
4 for i in "$ppid"
5 do
6 echo "$ppid"
7 done
最后版本
#!/bin/bash
ppid=`ps -elf|grep tomcat|grep java|grep -v "grep" | awk '{print " " ,$4}' `
if [ -n "$ppid" ]; then
echo $ppid
for i in "$ppid"
do
echo kill -9 "$ppid"
kill -9 $ppid
done
else
echo no tomcat running
fi