coroutine AbstractEventLoop.subprocess_shell(protocol_factory, cmd, *, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, **kwargs)
Create a subprocess from cmd, which is a character string or a bytes string encoded to the filesystem encoding, using the platform’s “shell” syntax. This is similar to the standard library subprocess.Popen
class called with shell=True
.
The protocol_factory must instanciate a subclass of the asyncio.SubprocessProtocol
class.
See subprocess_exec()
for more details about the remaining arguments.
Returns a pair of (transport, protocol)
, where transport is an instance of BaseSubprocessTransport
.
It is the application’s responsibility to ensure that all whitespace and metacharacters are quoted appropriately to avoid shell injection vulnerabilities. The shlex.quote()
function can be used to properly escape whitespace and shell metacharacters in strings that are going to be used to construct shell commands.
This method is a coroutine.
Please login to continue.