blob: 69f8850d1bc67fb61b03e8904e83ff750cd10987 (
plain) (
tree)
|
|
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename exec-as.info
@settitle exec-as
@afourpaper
@documentencoding UTF-8
@documentlanguage en
@finalout
@c %**end of header
@dircategory Miscellaneous
@direntry
* exec-as: (exec-as). exec with explicit argv[0]
@end direntry
@copying
Copyright @copyright{} 2015 Mattias Andrée
@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is included in the section entitled
``GNU Free Documentation License''.
@end quotation
@end copying
@ifnottex
@node Top
@top exec-as -- exec with explicit argv[0]
@insertcopying
@end ifnottex
@titlepage
@title exec-as
@subtitle exec with explicit @code{argv[0]}
@author by Mattias Andrée (maandree)
@page
@vskip 0pt plus 1filll
@insertcopying
@page
@end titlepage
@contents
@menu
* Overview:: Brief overview of @command{exec-as}.
* Invoking:: Executing @command{exec-as}.
* GNU Free Documentation License:: Copying and sharing this manual.
@end menu
@node Overview
@chapter Overview
@command{exec-as} shall spawn a program and
lets the user specify a value for @code{argv[0]}
explicitly.
@command{exec-as} is intended as a shell
command. It makes no since to use it from most
programming languages.
Since this is not a builtin function, it cannot
be used as @command{exec} without arguments to
set file descriptors.
Because this is not a builtin function, running
@command{exec-as} would normally do an fork–exec
rather than just an exec. To just perform an
exec, you need to use @command{exec} too:
@code{exec exec-as}
@node Invoking
@chapter Invoking
At least one argument are required. The first
argument is the file to run. This can either
be an absolute path, an explicitly relative path,
or a file in @env{$PATH}. The second argument
is the name of the process, @code{argv[0]}.
The following arguments are the rest in of the
values in @code{argv}, often called the
command line arguments.
@command{'exec-as bash -bash'} will run the first
program in @env{$PATH} named @command{bash}, and
set @code{argv[0]} to @code{-bash} (making it a
login shell.) You can add addition argument as
needed.
@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include fdl.texinfo
@bye
|