Source File
lp_unix.go
Belonging Package
os/exec
// Copyright 2010 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.// +build aix darwin dragonfly freebsd linux netbsd openbsd solarispackage execimport ()// ErrNotFound is the error resulting if a path search failed to find an executable file.var ErrNotFound = errors.New("executable file not found in $PATH")func ( string) error {, := os.Stat()if != nil {return}if := .Mode(); !.IsDir() && &0111 != 0 {return nil}return fs.ErrPermission}// LookPath searches for an executable named file in the// directories named by the PATH environment variable.// If file contains a slash, it is tried directly and the PATH is not consulted.// The result may be an absolute path or a path relative to the current directory.func ( string) (string, error) {// NOTE(rsc): I wish we could use the Plan 9 behavior here// (only bypass the path if file begins with / or ./ or ../)// but that would not match all the Unix shells.if strings.Contains(, "/") {:= findExecutable()if == nil {return , nil}return "", &Error{, }}:= os.Getenv("PATH")for , := range filepath.SplitList() {if == "" {// Unix shell semantics: path element "" means "."= "."}:= filepath.Join(, )if := findExecutable(); == nil {return , nil}}return "", &Error{, ErrNotFound}}
The pages are generated with Golds v0.2.8-preview. (GOOS=darwin GOARCH=arm64)