hilpers


  hilpers > linux.debian.user.french

 #1  
13/02/2018, 14h50
G2PC
# Créer le dossier installeur si il n'existe pas.
# ~/installeur est toujours inexistant du fait d'un chemin relatif donc
toujours recréé. Utiliser -h ne change rien.
# Je suis obligé de donner le path directement /home/seo/installeur

if [ -d "/home/seo/installeur" ]; then
echo " Le dossier ~/installeur existe déjà "
sleep 4
else
echo " Le dossier ~/installeur va être créé "
sleep 4
mkdir ~/installeur
fi

NB : L'idée était de créer un dossier installeur, dans lequel charger
executer puis supprimer les scripts d'installation.
Le soucis comme indiqué en commentaire :
# ~/installeur est toujours inexistant du fait d'un chemin relatif donc
toujours recréé. Utiliser -h ne change rien.

Merci de votre aide.

 #2  
13/02/2018, 16h20
Stephane Ascoet
Le 13/02/2018 à 13:45, G2PC a écrit :
> # Créer le dossier installeur si il n'existe pas.
> # ~/installeur est toujours inexistant du fait d'un chemin relatif donc
> toujours recréé. Utiliser -h ne change rien.
> # Je suis obligé de donner le path directement /home/seo/installeur

Bonjour, ~ n'est pas un chemin relatif. Pour traiter ce cas, je filtre par:
Admettons que ton dossier est stocke dans la variable dossiersc, ca donne:

dossierscr=$(echo ${dossiersc:-/dev/zero} | sed -e 's#~#$HOME#' | sed -e
"s#\$HOME#$HOME#")
 #3  
14/02/2018, 05h50
Charles Plessy
Le Tue, Feb 13, 2018 at 01:45:11PM +0100, G2PC a écrit :
> # Créer le dossier installeur si il n'existe pas.


mkdir -p ~/installeur # Ne fait pas d'erreur si le dossier existe déjà.

Amicalement,
 #4  
14/02/2018, 15h40
G2PC
> Le Tue, Feb 13, 2018 at 01:45:11PM +0100, G2PC a écrit :
>> # Créer le dossier installeur si il n'existe pas.

> mkdir -p ~/installeur # Ne fait pas d'erreur si le dossier existe déjà.
> Amicalement,


Erwan David disait, " Il serait plus propre d'utiliser mktemp pour créer
un nouveau répertoire qu'on effacera après, non ? "
>> Je ne sais pas, mais, je vais regarder.


Stéphane Ascoet, dossierscr=$(echo ${dossiersc:-/dev/zero} | sed -e
's#~#$HOME#' | sed -e "s#\$HOME#$HOME#")
>> Cette syntaxe me semble moins familière, je conserve pour voir par la suite.


Finalement, j'ai fais :

# Vérifier si le dossier d'installation existe, sinon, le créer.
ABS_PATH_INSTALLEUR=$(readlink -e ~/installeur)

if [ -d "$ABS_PATH_INSTALLEUR" ]; then
 echo " Démarrage - Le dossier d'installation existe "
 sleep 3

else
 echo " Chargement - Le dossier d'installation n'existe pas et va être
créé "
 sleep 3
 mkdir ~/installeur

fi

Discussions similaires
Bash : « Aucun fichier ou dossier de ce type » alors que le fichier existe...

VBA vérifier l'existence d'un dossier et le créer s'il n'existe pas

pb police avec shell bash et zsh

bash-Creer un dossier avec la date pour nom


Fuseau horaire GMT +2. Il est actuellement 09h56. | Privacy Policy