2016-10-07 1 views
1

結果を1行ずつ出力したい。Golangでは、私はexeコマンドでレコードを取得しています。行ごとに印刷する方法は?

exeコマンドでレコードのデータを取得しています。ここで

は、コードは次のとおりです。事前に

package main 

import (
"bufio" 
"fmt" 
"os/exec" 
) 

func main() { 
app := "df" 
//app := "buah" 

arg0 := "-h" 

cmd := exec.Command(app, arg0) 
stdout, err := cmd.Output() 

if err != nil { 
    println(err.Error()) 
    return 
} 

// bytes, _ := ioutil.ReadAll(stdout) 

s := bufio.NewScanner(stdout) 

fmt.Println(s) 

} 

感謝。 何か助けていただければ幸いです。

答えて

2

それは簡単です:

a := []string{} 
for s.Scan() {  
    a = append(a, s.Text()) 
} 

、あなたは文字列のスライスを持っています。

+0

私は次のエラーを取得しています: 'bufio.NewScannerの引数にタイプio.Readerとして([] byte型)標準出力を使用することはできません。 \t []バイトはio.Reader(行方不明Readメソッドを実装していません。 ) ' –

+0

ここに、実際の解決策があります:https://play.golang.org/p/x6P7VN_sd9 – kingSlayer

+0

私は出力を得ていますが、適切な位置合わせではありません。 –

関連する問題