<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    敬的世界

    常用鏈接

    統(tǒng)計

    最新評論

    java 調(diào)用 LINUX service ntpd stop

    If you read about the Javadoc of the Process class, you will discover something
    very weird and unexpected. The following is the context of the Javadoc for Process.
    In effect, you should be very clear of this limitation before you think of using
    the Process JDK. Ok, here it is:


    The methods that create processes may not work well for special processes on certain
    native platforms, such as native windowing processes, daemon processes, Win16/DOS
    processes on Microsoft Windows, or shell scripts.

    The created subprocess does not have its own terminal or console. All its standard
    io (i.e. stdin, stdout, stderr) operations will be redirected to the parent process
    through three streams (getOutputStream(), getInputStream(), getErrorStream()).
    ...


    So basically, Process does not guarantee your daemon process to work properly. This
    is horrifying when I first read about this Javadoc. However, I have changed my
    mind after using Process for a while. My experience tells me that usually Process
    cannot be working at the following circumstances: (assuming we are in Linux O.S.)

    - to execute shell built-in commands e.g. "cd" or "alias"
    - to redirect output from the executed application,
    - This method will NOT expand filesystem wildcards e.g. "*".

    Taking all these things into consideration, let's see what we can do to improve
    your code.

    First of all, Process has its standard outputstream, and its standard errorstream
    (but don't try to redirect them, as it will *not* work)


    Process proc = Runtime.getRuntime().exec(command);

    // Create thread for reading inputStream (process' stdout)
    proc.getInputStream();

    // Create thread for reading errorStream (process' stderr)
    proc.getErrorStream()


    Another fact I can see why your ntpd has not stopped is maybe you havn't given
    enough time for the Process to be executed completely.

    Consider adding the following code into your program:


    // this will wait for the process to end!!! I think it is very important
    // not to interfere with other process in the O.S.
    int returnCode = proc.waitFor();

    String msg = "Shell command [" + commandString + "] result [";
    if (returnCode == 0)
    {
    msg += "SUCCEEDED";
    }
    else
    {
    msg = msg + "FAILED - ret code: " + returnCode;
    }
    msg += "]";



    Then you can print the msg to the standard output or simply trace it into your log.
    You shall see the error if occurs.

    Another thing I can suggest you to do is fully read the Process Javadoc and any related documents about using Process.

    Hope these help.


    import java.io.*;
    public chass shell{
    public static void main(String [] args)throws Exception{
    try

    {

    process = Runtime.getRuntime().exec ("bin/sh service ntpd stop");

    InputStreamReader ir=newInputStreamReader(process.getInputStream());

    LineNumberReader input = new LineNumberReader (ir);


    String line;

    while ((line = input.readLine ()) != null)

    System.out.println(line);

    }

    catch (java.io.IOException e){

    System.err.println ("IOException " + e.getMessage());

    }
    }
    ?

    來自 :http://www.cjsdn.net/post/view?bid=1&id=196586

    posted on 2009-04-26 02:38 picture talk 閱讀(421) 評論(0)  編輯  收藏 所屬分類: Java

    主站蜘蛛池模板: 国产中文字幕免费| 好大好深好猛好爽视频免费| 亚洲色偷偷综合亚洲AV伊人| 亚洲av成人无码网站…| 日本久久久免费高清| 国产亚洲精品影视在线| 日韩免费一级毛片| 日韩在线视频播放免费视频完整版| 国产成人无码区免费A∨视频网站 国产成人涩涩涩视频在线观看免费 | 免费成人激情视频| 亚洲午夜精品一区二区公牛电影院 | 黄页网站在线免费观看| 亚洲精品无码日韩国产不卡?V| 美女视频黄.免费网址 | 免费在线观看毛片| 一级做a爰全过程免费视频毛片| 国产亚洲精品国看不卡| 日本一道本不卡免费| 亚洲成aⅴ人片在线观| 天天摸天天操免费播放小视频 | 亚洲午夜未满十八勿入| 三年片在线观看免费大全 | 国产AV无码专区亚洲AV毛网站 | 小说专区亚洲春色校园| 中文字幕亚洲一区| 8888四色奇米在线观看免费看| 亚洲三级在线播放| 免费在线观看黄网站| 最近免费中文字幕MV在线视频3| 亚洲精品日韩专区silk| 国产成人免费A在线视频| 两性色午夜视频免费网| 亚洲网红精品大秀在线观看| 最新中文字幕电影免费观看| 五月天婷婷精品免费视频| 亚洲av日韩av激情亚洲| 精品国产麻豆免费网站| 国产羞羞的视频在线观看免费| 亚洲视频无码高清在线| 国产精品亚洲不卡一区二区三区| 午夜无码A级毛片免费视频 |