code: def add_cmd_output(self, cmds, suggest_filename=None,
                         root_symlink=None, timeout=300, stderr=True,
                         chroot=True, runat=None, env=None, binary=False,
                         sizelimit=None, pred=None):
          
          if isinstance(cmds, six.string_types):
              cmds = [cmds]
          if len(cmds) > 1 and (suggest_filename or root_symlink):
              self._log_warn("ambiguous filename or symlink for command list")
          if sizelimit is None:
              sizelimit = self.get_option("log_size")
          for cmd in cmds:
              self._add_cmd_output(cmd, suggest_filename=suggest_filename,
                                   root_symlink=root_symlink, timeout=timeout,
                                   stderr=stderr, chroot=chroot, runat=runat,
                                   env=env, binary=binary, sizelimit=sizelimit,
                                   pred=pred)
docs: Run a program or a list of programs and collect the output