public function execute(string $command, callable $collect = null, string $redirect = '2>&1'): self
    {
        foreach ($this->outputOf($command, $redirect) as $line) {
            if (null !== $collect) {
                $collect($line);
            }
        }

        return $this;
    }