about summary refs log tree commit diff
path: root/Doc/Zsh/exec.yo
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/Zsh/exec.yo')
-rw-r--r--Doc/Zsh/exec.yo25
1 files changed, 25 insertions, 0 deletions
diff --git a/Doc/Zsh/exec.yo b/Doc/Zsh/exec.yo
new file mode 100644
index 000000000..0d53b14b8
--- /dev/null
+++ b/Doc/Zsh/exec.yo
@@ -0,0 +1,25 @@
+texinode(Command Execution)(Functions)(Redirection)(Top)
+chapter(Command Execution)
+ifzman(\
+sect(Command Execution)
+)\
+cindex(command execution)
+cindex(execution, of commands)
+If a command name contains no slashes, the shell attempts to locate
+it.  If there exists a shell function by that name, the function
+is invoked as described in noderef(Functions).  If there exists
+a shell builtin by that name, the builtin is invoked.
+
+vindex(path, use of)
+Otherwise, the shell searches each element of tt($path) for a
+directory containing an executable file by that name.  If the
+search is unsuccessful, the shell prints an error message and returns
+a nonzero exit status.
+
+If execution fails because the file is not in executable format,
+and the file is not a directory, it is assumed to be a shell
+script.  tt(/bin/sh) is spawned to execute it.  If the program
+is a file beginning with `tt(#!)', the remainder of the first line
+specifies an interpreter for the program.  The shell will
+execute the specified interpreter on operating systems that do
+not handle this executable format in the kernel.