# pipe-shell-command(2)

[Home] [Commands] [Variables] [Macro-Dev] [Glossary]

## NAME

pipe-shell-command - Execute a single operating system command
$ME_PIPE_STDERR - Command line diversion to stderr symbol

## SYNOPSIS

n pipe-shell-command "command" ["buffer-name"] (esc @)

[MS-DOS and Win32s Only]
$ME_PIPE_STDERR "string"; Default is undefined.

## DESCRIPTION

pipe-shell-command executes one operating system command command and pipes the resulting output into a buffer with the name of *command*.

The argument n can be used to change the default behavior of pipe-shell-command described above, n is a bit based flag where:-

0x01

Enables the use of the default buffer name *command* (default). If this bit is clear the user must supply a buffer name. This enables another command to be started without effecting any other command buffer.

0x02

Hides the output buffer, default action pops up a window and displays the output buffer in the new window.

0x04

Disable the use of the command-line processor to launch the program (win32 versions only). By default the "command" is launched by executing the command:

        %COMSPEC% /c command

Where `%COMSPEC%` is typically command.com. If this bit is set, the "command" is launched directly.

0x08

Detach the launched process from MicroEmacs (win32 versions only). By default the command is launched as a child process of MicroEmacs with a new console. With this bit set the process is completely detached from MicroEmacs instead.

0x10

Disable the command name mangling (win32 versions only). By default any '`/`' characters found in the command name (the first argument only) are converted to '`\`' characters to make it Windows compliant.

0x20

Displays the new process window (win32 versions only), by default the window is hidden.

0x40

Raw mode, disable text annotation at the start of the pipe output.

0x100

When set the command-line to be run is the first line of buffer string, this feature can be used to overcome the default 1024 character command-line limit. When a multiple-line command-line is required, a negative argument can be given to insert-string(2).

## NOTES

On MS-DOS and Win32s the standard shell command.com(1) does not support the piping of stderr to a file. Other shells, such as 4Dos.com(1), do, using the command-line argument "`>&`". If the environment variable "`ME_PIPE_STDERR`" is defined (the value is not used) then MicroEmacs assumes that the current shell supports piping of stderr.

## SEE ALSO

ipipe-shell-command(2), shell-command(2).

(c) Copyright JASSPA 2009
Last Modified: 2009/08/29
Generated On: 2009/10/12

</HMTL>