Browse Source

premier commit

Jackbot 10 months ago
commit
2b94d6d5f7
1 changed files with 79 additions and 0 deletions
  1. 79 0
      base.sh

+ 79 - 0
base.sh

@@ -0,0 +1,79 @@
+#!/bin/bash
+
+#set
+#-e  Exit immediately if a command exits with a non-zero status.
+#-u  Treat unset variables as an error when substituting.
+#set -eu
+
+#fonction appelée en cas de paramètres non valide ou de l'option -h
+usage()
+{
+	# "$(basename "${0}") pour gérer les espaces
+	echo "$(basename "${0}") description"
+	echo ''
+	echo "détail des options"
+}
+
+generation_date()
+{
+	DATE=`date +%y-%m-%d-%H:%M:%S`
+}
+
+#fonction principale
+main()
+{
+	#boucle pour la gestion des options
+	#a: signifie qu'un argument est attendu
+	#hV signifie que ces options existent mais ne prennent pas de paramètre
+	while getopts "a:c:hv" OPT
+	do
+		case "$OPT" in
+			a)
+				#Passage d'arguments
+				#afin de garantir le contenu de la variable il est préférable de la déclarer comme readonly
+				readonly ARGUMENT=${OPTARG}
+				;;
+
+			c)
+				#récupérer le chemin d'un fichier
+				readonly CHEMIN="$(readlink -f "${OPTARG}")"
+				;;
+
+			h)
+				usage
+				exit 0
+				;;
+
+			v)
+				readonly VERBOSE=true
+				;;
+
+			*)
+				#ce point est atteint lorsqu'une option inexistante est demandée
+				echo "parametres non valide"
+				usage
+				exit 1
+				;;
+		esac
+	done
+
+	#tester l'existence d'une variable
+	if [ ! -z $VERBOSE ]
+	then
+		echo "VERBOSE : $VERBOSE"
+
+		if [ ! -z $ARGUMENT ]
+		then
+			echo "ARGUMENT : $ARGUMENT"
+		fi
+
+		if [ ! -z $CHEMIN ]
+		then
+			echo "CHEMIN : $CHEMIN"
+		fi
+	fi
+
+	exit 0
+}
+
+main "$@"