Ausgabe vom Befehl git erfassen?
Ich schreibe ein Skript, um das Einrichten neuer Projekte für mich zu automatisieren.
Dazu gehört das Abrufen eines Github-Repositorys.
Ich möchte nur eine Ausgabe von meinem Skript erhalten und dann aufrufengit clone $repo
Ich möchte die Ausgabe dieses Befehls anzeigen, während er ausgeführt wird, aber wenn er ausgeführt wird, wenn er erfolgreich ausgeführt wurde, ersetzen Sie seine Ausgabe (beachten Sie nur die Ausgabe der git-Befehle, ich möchte weiterhin, dass die Ausgabe von davor da ist) mitrepository successfully cloned
Wenn dies fehlschlägt, lassen Sie die Ausgabe dort und druckenrepository cloning failed
.
Wie kann ich das machen?
Unten ist mein aktuelles (ziemlich einfaches) Skript.
#! /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