- 论坛徽章:
- 0
|
**对输出格式中的空格处理** . - #!/bin/sh
- a=(" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ")
- TOMCAT_HOME=/opt/oracle/tomcat
- sprint_status()
- {
- echo
- echo "Processes in Instance: `hostname`"
- echo "-----------------------------+------------+-----------"
- echo "instance | status | pid "
- echo "-----------------------------+------------+-----------"
- for i in `ls -l $TOMCAT_HOME| awk '/^d/{ print $NF}'`
- do
- str=`echo $i | awk '{print length($1)}'`
- ps aux | grep -w $i | grep -v "grep" | grep -vw "sh" > /dev/null
- ret=$?
- if [ $ret -eq 0 ]; then
- echo "$i${a:$str}| Alive | `ps aux | grep -w $i|grep -vw "sh" |grep -v "grep"| awk '{print $2}'` "
- else
- echo "$i${a:$str}| Down | N/A "
- fi
- RETVAL=$?
- done
- echo
- exit
- }
- sprint_status
- 测试:
-
- [root@SOR_SYS zy]# ls -l /opt/oracle/tomcat/ |awk '/^d/{ print $NF}'
- tomcatServer229-1
- tomcatServer229-2
- [root@SOR_SYS zy]# echo tomcatServer229-1|awk '{print length($1)}'
- 17
- [root@SOR_SYS zy]# a=(" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ")
- [root@SOR_SYS zy]# echo "tomcatServer229-1${a:17}|Alive | pid"
- tomcatServer229-1 |Alive | pid
- [root@SOR_SYS zy]#
- 标绿的地方就是对空格的处理,实际上实例的长度不能够大于a中规定的字符的长度,如果超过了会怎么样呢?
- Processes in Instance: SOR_SYS.99bill.com
- -----------------------------+------------+-----------
- instance | status | pid
- -----------------------------+------------+-----------
- tomcatServer229-1 | Down | N/A
- tomcatServer229-2 | Down | N/A
- tomcat-tomcat-tomcat-tomcat-tomcat-tomcat| Down | N/A
复制代码 |
|