免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 9613 | 回复: 18
打印 上一主题 下一主题

提示 :too many arguments [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-12-27 17:36 |只看该作者 |倒序浏览
#!/bin/bash
a=`ps aux|grep httpd|awk '{print $2}'`
if [ "$a" ne 0 ]
then
exit
else
/usr/local/apache2/bin/apachectl start
echo "restart.`date`" >> aaa.txt
fi

提示 :too many arguments
用了" "--还是提示这个  ?

论坛徽章:
0
2 [报告]
发表于 2010-12-27 17:43 |只看该作者
估计是httpd这个变量太长了 我换一个

论坛徽章:
0
3 [报告]
发表于 2010-12-27 17:51 |只看该作者
我这里执行没问题。。。
ps:把这句话改一下: if [ "$a" ne 0 ] -------->   if [ "$a" -ne 0 ]
  1. [root@hzlinea02 test]# cat a
  2. #!/bin/bash
  3. set -x
  4. a=`ps aux|grep httpd|awk '{print $2}'`
  5. if [ "$a" -ne 0 ]; then
  6.         exit
  7. else
  8.         ls
  9.         echo "restart.`date`" >> aaa.txt
  10. fi
  11. [root@hzlinea02 test]# ./a  
  12. ++ ps aux
  13. ++ grep httpd
  14. ++ awk '{print $2}'
  15. + a=20546
  16. + '[' 20546 -ne 0 ']'
  17. + exit
复制代码

论坛徽章:
0
4 [报告]
发表于 2010-12-27 17:59 |只看该作者
我这里执行没问题。。。
ps:把这句话改一下: if [ "$a" ne 0 ] -------->   if [ "$a" -ne 0 ]
xiaopan3322 发表于 2010-12-27 17:51



    改了后 提示:integer expression expected

我在折腾折腾吧 前面这个 set x-可有可无吧

论坛徽章:
0
5 [报告]
发表于 2010-12-27 18:01 |只看该作者
改了后 提示:integer expression expected

我在折腾折腾吧 前面这个 set x-可有可无吧
版主杀手 发表于 2010-12-27 17:59


set -x调试用的,你加上,然后贴出结果来看看

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2010-12-27 18:11 |只看该作者
#!/bin/bash
a=`ps aux|grep httpd|awk '{print $2}'`
if [ "$a" ne 0 ]
then
exit
else
/usr/local/ ...
版主杀手 发表于 2010-12-27 17:36
  1. #!/bin/bash
  2. a=`ps aux|grep httpd|awk '{print $2}'`
  3. if [ "$a" != "0" ]
  4. then
  5.         exit
  6. else
  7.         /usr/local/apache2/bin/apachectl start
  8.         echo "restart.`date`" >> aaa.txt
  9. fi
复制代码

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
7 [报告]
发表于 2010-12-27 18:12 |只看该作者
  1. #!/bin/bash
  2. declare -i a=`ps aux|grep httpd|awk '{print $2}'`
  3. if [ "$a" != 0 ]
  4. then
  5.     exit
  6. else
  7.     /usr/local/apache2/bin/apachectl start
  8.     echo "restart.`date`" >> aaa.txt
  9. fi
复制代码

论坛徽章:
0
8 [报告]
发表于 2010-12-27 18:12 |只看该作者
把"$a" 引号去掉看看

论坛徽章:
0
9 [报告]
发表于 2010-12-28 16:18 |只看该作者
set -x调试用的,你加上,然后贴出结果来看看
xiaopan3322 发表于 2010-12-27 18:01



    #!/bin/bash
set x
a=`ps aux|grep httpd|awk '{print $2}'`
if [ "$a" -ne 0 ]
then
exit
else
/usr/local/apache2/bin/apachectl start
echo "restart.`date`" >> aaa.txt
fi

[root@jj ~]# ./test.sh
./test.sh: line 4: [: : integer expression expected

httpd还是起来了 有5个进程

论坛徽章:
0
10 [报告]
发表于 2010-12-28 16:19 |只看该作者
L_kernel 发表于 2010-12-27 18:12



    你这个也不行
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP