Skip to content

Instantly share code, notes, and snippets.

@tlewiscpp
Created June 7, 2016 20:49
Show Gist options
  • Save tlewiscpp/e81df3a9f40dbc113f5f81fc3dfbd998 to your computer and use it in GitHub Desktop.
Save tlewiscpp/e81df3a9f40dbc113f5f81fc3dfbd998 to your computer and use it in GitHub Desktop.
Bash shell script to clone repos
#!/bin/bash
userReply=""
GITHUB_DIR="/opt/GitHub"
GITHUB_URL="https://github.com/Pinguinsan"
GITHUB_ENDING=".git"
folderName=""
noFolderSpecifiedString="NONELOL"
function displayHelp() {
echo "Usage: gitrekt [name of github repo]"
}
function doomSequence() {
echo -n "\"rm "
sleep 0.15
echo -n "-rf "
sleep 0.15
echo -n "/ -"
sleep 0.15
echo -n "-no"
sleep 0.15
echo -n "-pr"
sleep 0.15
echo -n "ese"
sleep 0.15
echo -n "rve"
sleep 0.15
echo -n "-ro"
sleep 0.15
echo -n "ot\""
echo
sleep 0.15
echo -n "Progress [="
sleep 0.2
echo -n "=="
sleep 0.7
echo -n "==="
sleep 0.34
echo -n "="
sleep 0.1
echo -n "=="
sleep 0.65
echo -n "==="
sleep 0.1
echo -n "="
sleep 0.86
echo -n "===="
sleep 0.3
echo -n "=="
sleep 0.4
echo -n "======="
sleep 0.1
echo -n "="
sleep 0.4
echo -n "==="
sleep 1.2
echo
echo "Hah, just kidding. Don't fucking do that."
}
#if [[ "$EUID" -eq "0" ]]; then
# echo "It is dangerous to run this script as root, it must be run as a regular user"
# exit 1
#fi
if [[ "$#" -eq "0" ]]; then
displayHelp
exit 0
fi
if [[ -d "$1" ]]; then
folderName="$1"
elif [[ -d "$GITHUB_DIR/$1" ]]; then
folderName="$GITHUB_DIR/$1"
else
folderName=$noFolderSpecifiedString
fi
if [[ "$folderName" != "$noFolderSpecifiedString" ]]; then
while [[ "$userReply" == "" ]]; do
read -p "Are you sure you want to delete $folderName? [Y/n] " userReply
done
if [[ "$userReply" == "y" || "$userReply" == "Y" || "$userReply" == "YES" || "$userReply" == "yes" || "$userReply" == "Yes" ]]; then
if [[ "$folderName" == "/" ]]; then
if [[ "$EUID" -eq "0" ]]; then
doomSequence
exit 420
else
echo "Command received to delete /. I'm afraid I can't let you do that."
exit 69
fi
else
rm -rf "$folderName"
git clone "$GITHUB_URL/$1$GITHUB_ENDING" "$folderName"
fi
elif [[ "$userReply" == "n" || "$userReply" == "N" || "$userReply" == "NO" || "$userReply" == "no" || "$userReply" == "No" ]]; then
echo "Exiting program"
exit 0
else
echo "Unspecified reply \"$userReply\", exiting program"
exit 1
fi
else
userReply=""
while [[ "$userReply" == "" ]]; do
read -p "$1 is not a directory, nor is $GITHUB_DIR/$1, do you want to attempt to clone to the default $GITHUB_DIR/$1? [Y/n] " userReply
done
if [[ "$userReply" == "y" || "$userReply" == "Y" || "$userReply" == "YES" || "$userReply" == "yes" || "$userReply" == "Yes" ]]; then
cd $GITHUB_DIR && git clone "$GITHUB_URL/$1$GITHUB_ENDING"
exit $?
elif [[ "$userReply" == "n" || "$userReply" == "N" || "$userReply" == "NO" || "$userReply" == "no" || "$userReply" == "No" ]]; then
echo "Exiting program"
exit 0
else
echo "Unspecified reply \"$userReply\", exiting program"
exit 1
fi
fi
#!/bin/bash
echo "Yeah, fuck you too"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment