2016-04-24 6 views
0

次のコマンドを使用して、ディレクトリがマウントされているかどうかを確認します。特定のディレクトリにマウントがある場合、golangをチェックインする方法--bind?

res := exec.Command("mount", "|", "grep", toDir, ">", "/dev/null").Run() 

ただし、ディレクトリがマウントされているかどうかに関係なく、exit status 1を返します。

マウント| grep/path/to/dir>/dev/null

コマンドラインで正しく動作します。

どうすれば情報を入手できますか?

答えて

1

のようなものを言語の機械を使用することができます。このようなものはうまくいくはずです。

package main 

import (
    "fmt" 
    "os/exec" 
) 

func main() { 
    res, _ := exec.Command("sh", "-c", "mount | grep /home").Output() 
    fmt.Printf("%s", res) 
} 
1

あなたはあなたのコマンドは、パイプを伴うので、あなたはそれを直接実行する代わりにbashにコマンド文字列として渡すことができ、配管のため

c1 := exec.Command("mount") 
c2 := exec.Command("grep", toDir) 
c2.Stdin, _ = c1.StdoutPipe() 
c2.Stdout = os.DevNull 
c2.Start() 
c1.Run() 
c2.Wait() 
関連する問題