问题
-
java 使用Runtime.getRuntime().execx执行kstat -p -m /’/^e1000g0|^e1000g$//’失败
- m_process.waitFor()总是返回1
- 0 表示命令执行成功
- 1 表示命令语法错误
- 2 表示命令执行错误
-
解决过程
-
开始不知道为什么出错
- 将命令改为 kstat -p -m /^e1000g0/就可以成功
- 将上了单引号以后,就始终返回1, 即语法错误
-
尝试将单引号改为双引号还是出错
- 但是双引号在solaris下也能执行成功
-
问google
-
查Runtime.getRuntime.exec
- 发现有个老兄翻译的别人的一篇文章中有提到,使用Runtime.getRuntime.exec调用重定向有问题
- 心里隐约觉得,自己的方向可能错了,可能并不是一个单引号那么简单的,导致waitFor返回1
- http://lusong163.itpub.net/post/14139/66778
-
查getRuntime().exec 重定向
-
这是第二天的事了,前天弄到晚上十点,没解决
- 知道没那么容易解决,自己的身体要紧,明天还要回上海呢
-
找到另一个老兄的问题
- http://topic.csdn.net/t/20050309/16/3837564.html#
- 他遇到的和我的不一样,他是调用 ps -ef | grep SSS | grep -v grep | awk ‘{print $2}’
- 我估计可能也是和这个引号有关系
-
这是第二天的事了,前天弄到晚上十点,没解决
-
查Runtime.getRuntime.exec
-
开始不知道为什么出错
版权声明:本文为fhqiplj原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。