In Python, you can spawn a new process using the
subprocess module, which allows you to spawn new processes, connect to their input/output/error pipes, and obtain their return codes.
To spawn a new process, you can use the
subprocess.run() function. Here’s an example:
import subprocess result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE) print(result.stdout.decode('utf-8'))
In this example, we use the
subprocess.run() function to spawn a new process that runs the
ls -l command. The
stdout argument is set to
subprocess.PIPE to capture the output of the command. The
result variable contains the result of the command, including the standard output, standard error, and return code.
We then print the standard output of the command by decoding the byte string returned by
result.stdout using the
decode() method with the
You can also use other functions from the
subprocess module to spawn new processes, such as
subprocess.Popen(). These functions offer more fine-grained control over the process and its input/output streams.
Note that spawning a new process can be resource-intensive and should be used judiciously. You should also be careful when passing user-supplied data to subprocesses to avoid security vulnerabilities like command injection.