Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
oorrja
GitHub Repository: oorrja/learntosolveit
Path: blob/master/languages/python/asyncio_examples/run_subprocess.py
1240 views
1
import asyncio
2
3
async def run_command(*args):
4
# Create a subprocess
5
process = await asyncio.create_subprocess_exec(
6
*args,
7
# stdout must be a pipe to be accessible as process.stdout
8
stdout=asyncio.subprocess.PIPE)
9
# Wait for the subprocess to finish
10
stdout, stderr = await process.communicate()
11
# return stdout
12
return stdout.decode().strip()
13
14
loop = asyncio.get_event_loop()
15
16
# Gather uname and date commands
17
18
commands = asyncio.gather(
19
run_command('uname'),
20
run_command('date'))
21
22
# Run the commands
23
24
uname, date = loop.run_until_complete(commands)
25
26
# Print a report
27
28
print(('uname: {}, date: {}'.format(uname, date)))
29
loop.close()
30
31