ホームページ > バックエンド開発 > Golang > Go でシステム コマンド出力を文字列として取得して保存するにはどうすればよいですか?

Go でシステム コマンド出力を文字列として取得して保存するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-21 05:39:17
オリジナル
266 人が閲覧しました

How to Retrieve and Store System Command Output as a String in Go?

Go でコマンド出力を文字列として取得する

Go では、さまざまな方法を使用してシステム コマンドの出力にアクセスできます。最初は、標準出力やエラー ストリームなど、コマンドに関連付けられた特定のファイルを操作する必要があるように思えるかもしれません。ただし、コマンドの出力を文字列としてキャプチャするための、より便利なアプローチが存在します。

プロセスを簡略化するために、例を考えてみましょう。Go プログラムで 'ls' コマンドの出力を取得し、それを次の場所に保存します。文字列変数。次のコード スニペットは、これを実現する方法を示しています。

package main

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

func main() {
    out, err := exec.Command("date").Output()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("The date is %s\n", out)
}
ログイン後にコピー

上記の例では、exec.Command("date").Output() を使用して 'date' コマンドを実行し、その出力を取得します。結果はバイト スライスとして out 変数に保存されます。これを文字列に変換するには、単に string() 関数を適用します。

string(out)
ログイン後にコピー

さらに、exec.Command には、Output() の代わりに使用できる CombinedOutput() メソッドが用意されています。 CombinedOutput() は標準出力と標準エラーの両方を返し、コマンドの実行に関する詳細情報を収集できます。

以上がGo でシステム コマンド出力を文字列として取得して保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート