¿Capturar salida desde el comando git?

Estoy escribiendo un script para automatizar la configuración de nuevos proyectos para mí.

Esto incluye bajar un repositorio github.

Lo que quiero hacer es tener algo de salida de mi script, luego llamargit clone $repo

Quiero mostrar la salida de ese comando mientras se está ejecutando, pero luego, cuando se ha ejecutado, si se ha ejecutado exitosamente, reemplaza su salida (note solo la salida de los comandos de git, todavía quiero que la salida de antes esté allí) conrepository successfully cloned y si falla, simplemente deja la salida allí, e imprimerepository cloning failed.

¿Cómo puedo hacer esto?

A continuación se muestra mi guión actual (bastante simple).

#! /bin/bash

# -p project name

templateurl="[email protected]:xxx/xxx-site-template.git"

while getopts ":p:" opt; do #eventually I'll add more options here

case $opt in
  p)
    project=$OPTARG
    ;;
  \?)
    echo "Invalid option: -$OPTARG" >&2
    exit 1
    ;;
  :)
    echo "Option -$OPTARG requires an argument." >&2
    exit 1
    ;;
esac
done

if [ -z "$project" ]; then
    echo "Project name required"
    exit 1
fi

clear
echo "|==========================|"
echo "| New xxx Project Creator  |"
echo "|==========================|"
echo "Project: $project"

if [ -d "$project" ]; then
    echo "Directory $project already exists!"
    exit 1
fi


mkdir $project
if [ ! -d "$project" ]; then
    echo "Failed to create project directory!"
    exit 1
fi

echo "Cloning xxx Template repository"
git clone $templateurl $project

Respuestas a la pregunta(2)

Su respuesta a la pregunta