1. 程式人生 > >Java呼叫Linux下的shell命令並將結果以流的形式返回

Java呼叫Linux下的shell命令並將結果以流的形式返回

這篇文章寫,Java呼叫 Linux的shell命令 並將結果以流的形式返回。

下面直接上程式碼,程式碼都是打了註釋的。

十分淺顯易懂。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main
{
	public static void main(String[] args)
	{
		
		//得到Java程序的相關Runtime執行物件
		Runtime runtime = Runtime.getRuntime();

		try
		{
			//利用exec()方法執行shell 命令 ls -al /root ,並且返回一個Process物件 也就是子程序
			//ps:這裡都以最簡單的shell命令舉例。
			Process process = runtime.exec("ls -al /root"); 

			BufferedReader bufferReader = new BufferedReader(
					new InputStreamReader(process.getInputStream()));

			StringBuffer stringBuffer = new StringBuffer();

			String temp = null;

			while ((temp = bufferReader.readLine()) != null)
			{
					stringBuffer.append(temp);
					
					stringBuffer.append("\n");
			}
			
			System.out.println(stringBuffer);

		}
		catch (IOException e)
		{
			e.printStackTrace();
		}
	}
}


相關推薦

Java呼叫Linuxshell命令結果形式返回

這篇文章寫,Java呼叫 Linux的shell命令 並將結果以流的形式返回。 下面直接上程式碼,程式碼都是打了註釋的。 十分淺顯易懂。 import java.io.BufferedReader

python 執行shell命令結果儲存

方法1: 將shell執行的結果儲存到字串 def run_cmd(cmd):     result_str=''     process = subprocess.Popen(cmd, shell=True,               stdout=subprocess

Python實現ssh登入執行shell命令結果寫入mysql資料庫

#coding=utf-8 import MySQLdb import paramiko import datetime import time #timestamptimestamp = time.mktime(datetime.datetime.now().timetu

windows linux 使用python執行系統命令結果保存到變量

rtc 2008r2 digg 系統 ng- shc down post drive 最近需要用到os.system 發現不能賦值到變量 後查有更新的模塊,如下: os.system os.spawn* os.popen* popen2.* commands.* 重新使

LinuxShell命令的輸出信息同時顯示在屏幕和保存到日誌文件中

blog inux -a 輸出 輸出內容 使用 col 文件中 信息 #直接覆蓋日誌文件 ls -l | tee ./t.log #將輸出內容附加到日誌文件 ls -l | tee -a ./t.log 使用的是tee命令Linux下She

linux shell命令 && || 區別

 在執行某個 命令時,有時需要依賴前面的命令是否執行成功。假如你想通過ssh命令複製很多資料檔案到另外的機器後,刪除所有源有檔案,所以在刪除源有檔案之前首先要確定複製是不是執行成功。只要執行復製成功才可以刪除,否則後果...... 一、&

Linuxshell命令用法和例項總結:du

完整的Linux下Shell命令總結歸檔於IT老兵部落格。 命令格式 du [選項] [檔案] 命令功能 du(disk usage 的簡稱)命令用於檢查計算機上檔案和目錄的磁碟使用情況,可以遞迴顯示檔案和目錄。顯示每個檔案和目錄的磁碟使用空間。 命令引數

linuxshell命令解析器

shell是一個命令語言解析器,有自己內建的shell命令集,shell也能被系統中其他應用程式所呼叫。使用者在提示符下輸入的命令都由shell先解釋然後傳給linux核心。 當普通使用者成功登陸,系統將執行一個稱為shell的程式,shell程序提供了命令列的

hive呼叫Linuxshell命令測試

hive>SELECT TRANSFORM(a.id,a.name) USING '/bin/cat -n'  AS (num,id,name) FROM cjhtest a; Query ID = hadoop_20150915011212_ab2c282c-85cc-4c23-9f3b-618b

linuxshell命令別名(alias)設定

在 /etc/profile (系統檔案)或 /home/.bashrc (使用者檔案)裡使用 alias 定義命令別名。例如: alias ll="ls -l" ll 就是命令別名,實際並不存在這個命令。 使用別名,不為別的,只為方便和高效。為一個經常要用的帶很多引數

java 呼叫cmd互動式執行命令獲得執行結果

需求是這樣:需要呼叫cmd執行某個位置下的可執行程式,(具體我這裡是gtsstp.exe),首先可以通過Process的getOutputStream向其輸入命令,然後用InputStreamReader獲得執行結果。 這裡需要注意的是:因為讀取執行結果時是按

C語言執行Linuxshell命令獲得返回

popen函式執行命令後,返回一個指向該命令輸出的檔案控制代碼,接下來就可以用fgets等檔案操作函式去讀取輸出結果。 [cpp] view plaincopyprint? #include <stdio.h> FILE *popen(cons

linuxshell for 迴圈執行不等待php指令碼返回

 #!/bin/bash for i in {1..20} do         `cd /usr/xxxx ;php test.php > /dev/null &` done  ------------------------------------

Java 呼叫Linux 命令獲取命令執行結果

1.工具類 public class ExcuteLinux { public static String exeCmd(String commandStr) { String result = null; try { St

java呼叫Linux執行Python爬蟲,資料儲存到elasticsearch--(一、環境指令碼搭建)

java呼叫Linux執行Python爬蟲,並將資料儲存到elasticsearch中 一、以下部落格程式碼使用的開發工具及環境如下: 1、idea: 2、jdk:1.8 3、elasticsearch:5.2.0 4、Linux 5、Python 6、maven 二、maven座標: <!--jav

java呼叫shell命令獲取執行結果

原文地址:http://blog.csdn.net/arkblue/article/details/7897396 使用到Process和Runtime兩個類,返回值通過Process類的getInputStream()方法獲取 package ark;

java 呼叫 linux shell 指令碼,讀取返回

String[] cmd = {"/bin/sh", "-c", "ps -elf | grep -v grep | grep EuropeStaticsEntrance | wc -l"}; while (true) { StringBuilder sb = ne

JAVA呼叫linux中的shell命令列的工具類

二話不說,直接上程式碼! package cn.sigangjun.util; /** * <p>Title:java call linux shell util </p> * <p>Description: java call

java呼叫linux命令獲取返回

其實就是用java的IO流去讀取檔案public static String ReadTxtFile(String strFilePath) { String path = strFilePa

linux安裝opencv生成opencv-java,即linuxjava呼叫opencv

版本是opencv2.4.5 1、安裝依賴包,採用yum命令安裝,在終端機輸入以下指令 yum install cmake gcc gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib