pkg gosh, func InitChildMain()
pkg gosh, func InitMain()
pkg gosh, func NewShell(Opts) *Shell
pkg gosh, func NopWriteCloser(io.Writer) io.WriteCloser
pkg gosh, func RegisterFunc(string, interface{}) *Func
pkg gosh, func SendVars(map[string]string)
pkg gosh, method (*Cmd) AddStderrWriter(io.WriteCloser)
pkg gosh, method (*Cmd) AddStdoutWriter(io.WriteCloser)
pkg gosh, method (*Cmd) AwaitVars(...string) map[string]string
pkg gosh, method (*Cmd) Clone() *Cmd
pkg gosh, method (*Cmd) CombinedOutput() string
pkg gosh, method (*Cmd) Pid() int
pkg gosh, method (*Cmd) Run()
pkg gosh, method (*Cmd) SetStdinReader(io.Reader)
pkg gosh, method (*Cmd) Signal(os.Signal)
pkg gosh, method (*Cmd) Start()
pkg gosh, method (*Cmd) StderrPipe() io.ReadCloser
pkg gosh, method (*Cmd) StdinPipe() io.WriteCloser
pkg gosh, method (*Cmd) Stdout() string
pkg gosh, method (*Cmd) StdoutPipe() io.ReadCloser
pkg gosh, method (*Cmd) StdoutStderr() (string, string)
pkg gosh, method (*Cmd) Terminate(os.Signal)
pkg gosh, method (*Cmd) Wait()
pkg gosh, method (*Shell) AddToCleanup(func())
pkg gosh, method (*Shell) BuildGoPkg(string, ...string) string
pkg gosh, method (*Shell) Cleanup()
pkg gosh, method (*Shell) Cmd(string, ...string) *Cmd
pkg gosh, method (*Shell) FuncCmd(*Func, ...interface{}) *Cmd
pkg gosh, method (*Shell) HandleError(error)
pkg gosh, method (*Shell) MakeTempDir() string
pkg gosh, method (*Shell) MakeTempFile() *os.File
pkg gosh, method (*Shell) Ok()
pkg gosh, method (*Shell) Popd()
pkg gosh, method (*Shell) Pushd(string)
pkg gosh, method (*Shell) Rename(string, string)
pkg gosh, method (*Shell) Wait()
pkg gosh, type Cmd struct
pkg gosh, type Cmd struct, Args []string
pkg gosh, type Cmd struct, Err error
pkg gosh, type Cmd struct, ExitAfter time.Duration
pkg gosh, type Cmd struct, ExitErrorIsOk bool
pkg gosh, type Cmd struct, IgnoreParentExit bool
pkg gosh, type Cmd struct, OutputDir string
pkg gosh, type Cmd struct, Path string
pkg gosh, type Cmd struct, PropagateOutput bool
pkg gosh, type Cmd struct, Vars map[string]string
pkg gosh, type Func struct
pkg gosh, type Opts struct
pkg gosh, type Opts struct, BinDir string
pkg gosh, type Opts struct, ChildOutputDir string
pkg gosh, type Opts struct, Fatalf func(string, ...interface{})
pkg gosh, type Opts struct, Logf func(string, ...interface{})
pkg gosh, type Opts struct, PropagateChildOutput bool
pkg gosh, type Shell struct
pkg gosh, type Shell struct, Args []string
pkg gosh, type Shell struct, Err error
pkg gosh, type Shell struct, Opts Opts
pkg gosh, type Shell struct, Vars map[string]string
