最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java執(zhí)行Linux命令的方法

 更新時(shí)間:2014年11月20日 14:28:27   投稿:shichen2014  
這篇文章主要介紹了java執(zhí)行Linux命令的方法,涉及對(duì)Java中Runtime.exec()函數(shù)的應(yīng)用,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了java執(zhí)行Linux命令的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

復(fù)制代碼 代碼如下:

public class StreamGobbler extends Thread { 
     
    InputStream is; 
    String type; 
 
    public StreamGobbler(InputStream is, String type) { 
        this.is = is; 
        this.type = type; 
    } 
 
    public void run() { 
        try { 
            InputStreamReader isr = new InputStreamReader(is); 
            BufferedReader br = new BufferedReader(isr); 
            String line = null; 
            while ((line = br.readLine()) != null) { 
                if (type.equals("Error")) { 
                    System.out.println("Error   :" + line); 
                } else { 
                    System.out.println("Debug:" + line); 
                } 
            } 
        } catch (IOException ioe) { 
            ioe.printStackTrace(); 
        } 
    } 

private void shell(String cmd)
{
        String[] cmds = { "/bin/sh", "-c", cmd };
        Process process;

        try
        {
            process = Runtime.getRuntime().exec(cmds);

            StreamGobbler errorGobbler = new StreamGobbler(process.getErrorStream(), "Error");
            StreamGobbler outputGobbler = new StreamGobbler(process.getInputStream(), "Output");
            errorGobbler.start();
            outputGobbler.start();
            try
            {
                process.waitFor();
            }
            catch (InterruptedException e)
            {
                e.printStackTrace();
            }
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
}

其中參數(shù) cmd 為L(zhǎng)inux命令。每次只能執(zhí)行一條命令。

1.Java Runtime.exec()注意事項(xiàng):

① 永遠(yuǎn)要在調(diào)用waitFor()方法之前讀取數(shù)據(jù)流
② 永遠(yuǎn)要先從標(biāo)準(zhǔn)錯(cuò)誤流中讀取,然后再讀取標(biāo)準(zhǔn)輸出流

2.最好的執(zhí)行系統(tǒng)命令的方法就是寫個(gè)bat文件或是shell腳本。

希望本文所述對(duì)大家的Java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 一文掌握Spring?中?@Component?和?@Bean?區(qū)別(最新推薦)

    一文掌握Spring?中?@Component?和?@Bean?區(qū)別(最新推薦)

    ?@Component?用于標(biāo)識(shí)一個(gè)普通的類,@Bean用于配置類里面,在方法上面聲明和配置?Bean?對(duì)象,這篇文章主要介紹了Spring?中?@Component?和?@Bean?區(qū)別(最新推薦),需要的朋友可以參考下
    2024-04-04
  • Java執(zhí)行shell命令的實(shí)現(xiàn)

    Java執(zhí)行shell命令的實(shí)現(xiàn)

    本文主要介紹了Java執(zhí)行shell命令的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • spring事務(wù)里面開啟線程插入報(bào)錯(cuò)了是否會(huì)回滾

    spring事務(wù)里面開啟線程插入報(bào)錯(cuò)了是否會(huì)回滾

    這篇文章主要介紹了spring事務(wù)里面開啟線程插入,報(bào)錯(cuò)了是否會(huì)回滾?這是小編遇到一道面試題,題目大概是這個(gè)樣子,今天抽空通過示例代碼給大家分析下,需要的朋友可以參考下
    2023-04-04
  • 談?wù)剬?duì)Java多態(tài)性的一點(diǎn)理解

    談?wù)剬?duì)Java多態(tài)性的一點(diǎn)理解

    多態(tài)就是指程序中定義的引用變量所指向的具體類型和通過該引用變量發(fā)出的方法調(diào)用在編程時(shí)并不確定,而是在程序運(yùn)行期間才確定,即一個(gè)引用變量倒底會(huì)指向哪個(gè)類的實(shí)例對(duì)象,該引用變量發(fā)出的方法調(diào)用到底是哪個(gè)類中實(shí)現(xiàn)的方法,必須在由程序運(yùn)行期間才能決定
    2017-08-08
  • Spring Security基于數(shù)據(jù)庫(kù)實(shí)現(xiàn)認(rèn)證過程解析

    Spring Security基于數(shù)據(jù)庫(kù)實(shí)現(xiàn)認(rèn)證過程解析

    這篇文章主要介紹了Spring Security基于數(shù)據(jù)庫(kù)實(shí)現(xiàn)認(rèn)證過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java中關(guān)于線程安全的三種解決方式

    Java中關(guān)于線程安全的三種解決方式

    這篇文章主要介紹了Java中關(guān)于線程安全的三種解決方式,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 詳解備忘錄模式及其在Java設(shè)計(jì)模式編程中的實(shí)現(xiàn)

    詳解備忘錄模式及其在Java設(shè)計(jì)模式編程中的實(shí)現(xiàn)

    這篇文章主要介紹了詳解備忘錄模式及其在Java設(shè)計(jì)模式編程中的實(shí)現(xiàn),備忘錄模式數(shù)據(jù)的存儲(chǔ)過程中應(yīng)當(dāng)注意淺拷貝和深拷貝的問題,需要的朋友可以參考下
    2016-04-04
  • Java中this的用法實(shí)例總結(jié)

    Java中this的用法實(shí)例總結(jié)

    JAVA中的this是一個(gè)非常重要的模塊,在編程中有非常重要的地位,擅長(zhǎng)用this的人常??梢允钩绦蚋雍?jiǎn)潔和方便,下面這篇文章主要給大家介紹了關(guān)于Java中this用法的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • PowerJob?AbstractSqlProcessor方法工作流程源碼解讀

    PowerJob?AbstractSqlProcessor方法工作流程源碼解讀

    這篇文章主要為大家介紹了PowerJob?AbstractSqlProcessor方法工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Springboot @Value注入boolean設(shè)置默認(rèn)值方式

    Springboot @Value注入boolean設(shè)置默認(rèn)值方式

    這篇文章主要介紹了Springboot @Value注入boolean設(shè)置默認(rèn)值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03

最新評(píng)論

新密市| 夹江县| 天长市| 庄浪县| 岳阳市| 榕江县| 黑水县| 金平| 呼伦贝尔市| 手机| 上杭县| 永康市| 长汀县| 红桥区| 黔西县| 会理县| 屏南县| 敖汉旗| 晴隆县| 遂平县| 吉林省| 健康| 麻栗坡县| 家居| 洛阳市| 甘德县| 扶沟县| 教育| 驻马店市| 扬州市| 措勤县| 烟台市| 呈贡县| 穆棱市| 洛川县| 郯城县| 大邑县| 遂昌县| 自治县| 宝坻区| 东丽区|