ホームページ > バックエンド開発 > Golang > Go から Linux 組み込みコマンドを実行するにはどうすればよいですか?

Go から Linux 組み込みコマンドを実行するにはどうすればよいですか?

DDD
リリース: 2024-12-02 13:34:14
オリジナル
801 人が閲覧しました

How Can I Execute Linux Built-in Commands from Go?

Go からの組み込み Linux コマンドの実行

exec.Command(" を使用して Linux 上のプログラムの存在を確認しようとするときcommand"、"-v"、"foo") 構文を使用すると、「command」が正しくないことを示すエラーが発生する場合があります。 $PATH にあります。これは、「コマンド」が実行可能バイナリではなく、組み込みの Linux シェル組み込みであるためです。

Go から組み込みコマンドを実行するには、いくつかのオプションがあります:

1. exec.LookPath の使用:

提供された記事で提案されているように、exec.LookPath 関数を使用して、実行する必要があるコマンドの $PATH を検索できます。

path, err := exec.LookPath("command")
if err != nil {
    // Handle error
}
// Use path to execute the command
ログイン後にコピー

2.外部シェル呼び出しの使用:

または、次の構文を使用してシェル内からコマンドを呼び出すこともできます:

exec.Command("/bin/bash", "-c", "command -v foo")
ログイン後にコピー

これにより、内部に組み込まれている「コマンド」が実行されます。 Bash シェル。

3.シェル実行の使用:

複数のコマンドを実行するか、より複雑な操作を実行する必要がある場合は、os/exec.Command 関数を使用してシェル スクリプトを実行できます:

cmd := exec.Command("sh", "my-script.sh")
cmd.Run()
ログイン後にコピー

これにより、現在のシェルで my-script.sh の内容が実行されます。

以上がGo から Linux 組み込みコマンドを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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