Bonjour j'essaye actuellement de réaliser un script bash. Dans lequel j'essaye de lancer une commande censée me donner les informations sur l'OS sur lequel je suis. Je fais donc ceci :
1 2 3 4 | #!/bin/bash ### Verification du systeme cible ### dist=`lsb_release -i` echo "Disctribution : $dist" |
Mais j'obtiens une erreur lsb_release Command not found
.
Je me suis dit que c'est peut-être mon lsb qui est foireux, sauf que même en remplaçant par un simple ls -l
j'ai la même erreur.
Quelqu'un a une idée ? En sachant que je l'ai lancé depuis un système Redhat sur une machine Vagrant. Pas encore testé sur un autre OS.
Mon script complet ci-dessous.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | #!/bin/bash #Set Script Name variable SCRIPT=`basename ${BASH_SOURCE[0]}` #Initialize variables to default values. OPT_URL_REPO="https://github.com/zestedesavoir/zds-site.git" OPT_BRANCH="dev" #Set fonts for Help. NORM=`tput sgr0` BOLD=`tput bold` REV=`tput smso` #Help function function HELP { echo -e \\n"Documentation du script ${BOLD}${SCRIPT}.${NORM}"\\n echo -e "${REV}Utilisation basique:${NORM} ${BOLD}$SCRIPT /opt/${NORM}"\\n echo "Les options sont optionels. Les seules options reconnues sont les suivantes :" echo "${REV}-u${NORM} --Modifie la valeur de l'option ${BOLD}url${NORM}. La valeur par defaut est: ${BOLD}https://github.com/zestedesavoir/zds-site.git${NORM}." echo "${REV}-b${NORM} --Modifie la valeur de l'option ${BOLD}branch${NORM}. La valeur par defaut est: ${BOLD}dev${NORM}." echo -e "${REV}-h${NORM} --Affiche le message d'aide. Aucune autre fonction n'est executee."\\n echo -e "Exemple: ${BOLD}$SCRIPT -u https://github.com/zestedesavoir/zds-site.git -b dev /opt/${NORM}"\\n exit 1 } #Check the number of arguments. If none are passed, print help and exit. NUMARGS=$# echo -e \\n"Nombre d'arguments: $NUMARGS" if [ $NUMARGS -eq 0 ]; then HELP fi ### Start getopts code ### #Parse command line flags #If an option should be followed by an argument, it should be followed by a ":". #Notice there is no ":" after "h". The leading ":" suppresses error messages from #getopts. This is required to get my unrecognized option code to work. while getopts :u:b:h FLAG; do case $FLAG in u) #set option "url" OPT_URL_REPO=$OPTARG echo "-u utilise: $OPTARG" echo "OPT_REPO_URL = $OPT_URL_REPO" ;; b) #set option "branch" OPT_BRANCH=$OPTARG echo "-b utilise: $OPTARG" echo "OPT_BRANCH = $OPT_BRANCH" ;; h) #show help HELP ;; \?) #unrecognized option - show help echo -e \\n"Option -${BOLD}$OPTARG${NORM} non permise." HELP #If you just want to display a simple error message instead of the full #help, remove the 2 lines above and uncomment the 2 lines below. #echo -e "Use ${BOLD}$SCRIPT -h${NORM} to see the help documentation."\\n #exit 2 ;; esac done shift $((OPTIND-1)) #This tells getopts to move on to the next argument. ### End getopts code ### while [ $# -ne 0 ]; do PATH=$1 echo -e "Installation de ZDS dans le repertoire : $PATH sur $OSTYPE"\\n ### Verification du système cible ### dist=`lsb_release -i` echo "Distribution : $dist" shift #Move on to next input file. done exit 0 |
+0
-0