def start_process(self, command, stdin=None, alias=None):
        """Starts the given command as a background process.

        Starts the process in the background and sets this process as
        the current process. The following calls of the keywords `Read
        Process Output` or `Stop Process` affect this process, unless
        the keyword `Switch Process` is used.

        If the command needs input through the standard input stream,
        it can be defined with the `stdin` argument.  It is not
        possible to give input to the command later. Possible command
        line arguments must be given as part of the command like
        '/tmp/script.sh arg1 arg2'.

        Returns the index of this process. The indexing starts from 1, and it
        can be used to switch between the processes with the `Switch Process`
        keyword. To wait until all processes terminate and to reset indexing, the
        `Stop All Processes` keyword must be used.

        The optional `alias` is a name for this process that may be used with
        `Switch Process` instead of the returned index.

        The standard error stream is redirected to the standard input
        stream automatically by adding '2>&1' after the executed
        command. This is done the same way, and for the same reasons,
        as with `Run` keyword.

        Example:
        | Start Process  | /path/longlasting.sh |
        | Do Something   |                      |
        | ${output} =    | Read Process Output  |
        | Should Contain | ${output}            | Expected text |
        | [Teardown]     | Stop All Processes   |
        """
        process = _Process2(command, stdin)
        self._info("Running command '%s'" % process)
        return PROCESSES.register(process, alias)
dataset/ETHPy150Open shellderp/sublime-robot-plugin/lib/robot/libraries/OperatingSystem.py/OperatingSystem.start_process/original