]> Cypherpunks repositories - gostls13.git/commitdiff
os/exec: document lack of implicit shell usage or globbing
authorBrad Fitzpatrick <bradfitz@golang.org>
Wed, 5 Jul 2017 23:05:42 +0000 (23:05 +0000)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 6 Jul 2017 03:38:37 +0000 (03:38 +0000)
Fixes #20894

Change-Id: I0c0e906964bbd789317d07f245e64e3d61ecfa8c
Reviewed-on: https://go-review.googlesource.com/47550
Reviewed-by: Russ Cox <rsc@golang.org>
src/os/exec/exec.go

index 7f0d68b07162d5467887b9de891fad35dce85c51..c3599681c316f2911773c90759a4620912c8bd6c 100644 (file)
@@ -6,6 +6,15 @@
 // easier to remap stdin and stdout, connect I/O with pipes, and do other
 // adjustments.
 //
+// Unlike the "system" library call from C and other languages, the
+// os/exec package intentionally does not invoke the system shell and
+// does not expand any glob patterns or handle other expansions,
+// pipelines, or redirections typically done by shells. The package
+// behaves more like C's "exec" family of functions. To expand glob
+// patterns, either call the shell directly, taking care to escape any
+// dangerous input, or use the path/filepath package's Glob function.
+// To expand environment variables, use package os's ExpandEnv.
+//
 // Note that the examples in this package assume a Unix system.
 // They may not run on Windows, and they do not run in the Go Playground
 // used by golang.org and godoc.org.