| 245 | break |
| 246 | |
| 247 | async def _stream_communicate(process, cell): |
| 248 | process.stdin.write(cell) |
| 249 | process.stdin.close() |
| 250 | stdout_task = asyncio.create_task( |
| 251 | _handle_stream(process.stdout, args.out, sys.stdout) |
| 252 | ) |
| 253 | stderr_task = asyncio.create_task( |
| 254 | _handle_stream(process.stderr, args.err, sys.stderr) |
| 255 | ) |
| 256 | await asyncio.wait([stdout_task, stderr_task]) |
| 257 | await process.wait() |
| 258 | |
| 259 | argv = arg_split(line, posix=not sys.platform.startswith("win")) |
| 260 | args, cmd = self.shebang.parser.parse_known_args(argv) |