X7ROOT File Manager
Current Path:
/opt/golang/1.22.0/src/os/exec
opt
/
golang
/
1.22.0
/
src
/
os
/
exec
/
📁
..
📄
bench_test.go
(492 B)
📄
dot_test.go
(6.13 KB)
📄
env_test.go
(1.66 KB)
📄
example_test.go
(3.49 KB)
📄
exec.go
(41.16 KB)
📄
exec_linux_test.go
(1.23 KB)
📄
exec_other_test.go
(286 B)
📄
exec_plan9.go
(608 B)
📄
exec_posix_test.go
(6.79 KB)
📄
exec_test.go
(47.62 KB)
📄
exec_unix.go
(635 B)
📄
exec_unix_test.go
(313 B)
📄
exec_windows.go
(721 B)
📄
exec_windows_test.go
(2.37 KB)
📁
internal
📄
internal_test.go
(1.21 KB)
📄
lp_linux_test.go
(2.33 KB)
📄
lp_plan9.go
(1.94 KB)
📄
lp_test.go
(737 B)
📄
lp_unix.go
(2.44 KB)
📄
lp_unix_test.go
(762 B)
📄
lp_wasm.go
(1012 B)
📄
lp_windows.go
(5.98 KB)
📄
lp_windows_test.go
(16.31 KB)
📄
read3.go
(2.16 KB)
Editing: example_test.go
// Copyright 2012 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package exec_test import ( "context" "encoding/json" "fmt" "io" "log" "os" "os/exec" "strings" "time" ) func ExampleLookPath() { path, err := exec.LookPath("fortune") if err != nil { log.Fatal("installing fortune is in your future") } fmt.Printf("fortune is available at %s\n", path) } func ExampleCommand() { cmd := exec.Command("tr", "a-z", "A-Z") cmd.Stdin = strings.NewReader("some input") var out strings.Builder cmd.Stdout = &out err := cmd.Run() if err != nil { log.Fatal(err) } fmt.Printf("in all caps: %q\n", out.String()) } func ExampleCommand_environment() { cmd := exec.Command("prog") cmd.Env = append(os.Environ(), "FOO=duplicate_value", // ignored "FOO=actual_value", // this value is used ) if err := cmd.Run(); err != nil { log.Fatal(err) } } func ExampleCmd_Output() { out, err := exec.Command("date").Output() if err != nil { log.Fatal(err) } fmt.Printf("The date is %s\n", out) } func ExampleCmd_Run() { cmd := exec.Command("sleep", "1") log.Printf("Running command and waiting for it to finish...") err := cmd.Run() log.Printf("Command finished with error: %v", err) } func ExampleCmd_Start() { cmd := exec.Command("sleep", "5") err := cmd.Start() if err != nil { log.Fatal(err) } log.Printf("Waiting for command to finish...") err = cmd.Wait() log.Printf("Command finished with error: %v", err) } func ExampleCmd_StdoutPipe() { cmd := exec.Command("echo", "-n", `{"Name": "Bob", "Age": 32}`) stdout, err := cmd.StdoutPipe() if err != nil { log.Fatal(err) } if err := cmd.Start(); err != nil { log.Fatal(err) } var person struct { Name string Age int } if err := json.NewDecoder(stdout).Decode(&person); err != nil { log.Fatal(err) } if err := cmd.Wait(); err != nil { log.Fatal(err) } fmt.Printf("%s is %d years old\n", person.Name, person.Age) } func ExampleCmd_StdinPipe() { cmd := exec.Command("cat") stdin, err := cmd.StdinPipe() if err != nil { log.Fatal(err) } go func() { defer stdin.Close() io.WriteString(stdin, "values written to stdin are passed to cmd's standard input") }() out, err := cmd.CombinedOutput() if err != nil { log.Fatal(err) } fmt.Printf("%s\n", out) } func ExampleCmd_StderrPipe() { cmd := exec.Command("sh", "-c", "echo stdout; echo 1>&2 stderr") stderr, err := cmd.StderrPipe() if err != nil { log.Fatal(err) } if err := cmd.Start(); err != nil { log.Fatal(err) } slurp, _ := io.ReadAll(stderr) fmt.Printf("%s\n", slurp) if err := cmd.Wait(); err != nil { log.Fatal(err) } } func ExampleCmd_CombinedOutput() { cmd := exec.Command("sh", "-c", "echo stdout; echo 1>&2 stderr") stdoutStderr, err := cmd.CombinedOutput() if err != nil { log.Fatal(err) } fmt.Printf("%s\n", stdoutStderr) } func ExampleCmd_Environ() { cmd := exec.Command("pwd") // Set Dir before calling cmd.Environ so that it will include an // updated PWD variable (on platforms where that is used). cmd.Dir = ".." cmd.Env = append(cmd.Environ(), "POSIXLY_CORRECT=1") out, err := cmd.Output() if err != nil { log.Fatal(err) } fmt.Printf("%s\n", out) } func ExampleCommandContext() { ctx, cancel := context.WithTimeout(context.Background(), 100*time.Millisecond) defer cancel() if err := exec.CommandContext(ctx, "sleep", "5").Run(); err != nil { // This will fail after 100 milliseconds. The 5 second sleep // will be interrupted. } }
Upload File
Create Folder