LINUX.ORG.RU

История изменений

Исправление Zmicier, (текущая версия) :

Да хрен это оттуда поймешь.

       A  simple command is a sequence of optional variable assignments followed by blank-
       separated words and redirections, and terminated by a control operator.  The  first
       word  specifies  the  command  to be executed, and is passed as argument zero.  The
       remaining words are passed as arguments to the invoked command.

— кажется, это все, что есть по теме в bash(1)

В полноценное «Справочное руководство» тоже надо вчитываться, если предварительно не знаешь.

3.7.1 Simple Command Expansion
------------------------------

When a simple command is executed, the shell performs the following
expansions, assignments, and redirections, from left to right.

  1. The words that the parser has marked as variable assignments (those
     preceding the command name) and redirections are saved for later
     processing.

  2. The words that are not variable assignments or redirections are
     expanded (*note Shell Expansions::).  If any words remain after
     expansion, the first word is taken to be the name of the command
     and the remaining words are the arguments.

  3. Redirections are performed as described above (*note
     Redirections::).

  4. The text after the `=' in each variable assignment undergoes tilde
     expansion, parameter expansion, command substitution, arithmetic
     expansion, and quote removal before being assigned to the variable.

   If no command name results, the variable assignments affect the
current shell environment.  Otherwise, the variables are added to the
environment of the executed command and do not affect the current shell
environment.  If any of the assignments attempts to assign a value to a
readonly variable, an error occurs, and the command exits with a
non-zero status.

— (info "(bash) Simple Command Expansion")

   The environment for any simple command or function may be augmented
temporarily by prefixing it with parameter assignments, as described in
*note Shell Parameters::.  These assignment statements affect only the
environment seen by that command.

— (info "(bash) Environment")

Исправление Zmicier, :

Да хрен это оттуда поймешь.

       A  simple command is a sequence of optional variable assignments followed by blank-
       separated words and redirections, and terminated by a control operator.  The  first
       word  specifies  the  command  to be executed, and is passed as argument zero.  The
       remaining words are passed as arguments to the invoked command.

— кажется, это все, что есть по теме в bash(1)

Исходная версия Zmicier, :

Да хрен это оттуда поймешь.