Created
June 7, 2016 20:49
-
-
Save tlewiscpp/e81df3a9f40dbc113f5f81fc3dfbd998 to your computer and use it in GitHub Desktop.
Bash shell script to clone repos
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/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 | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/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