ONYX - 9.0 - KB - ifFileExist - Différence de comportement entre Windows et Linux

Différence entre versions

De MappingDoc
Ligne 1 : Ligne 1 :
 
Une différence de comportement sur la boite ifFileExist entre Windows et Linux :
 
Une différence de comportement sur la boite ifFileExist entre Windows et Linux :
  
Sur windows, celle-ci vérifie la présence d'un fichier ET d'un répertoire
+
Sur windows, celle-ci vérifie la présence d'un fichier ET d'un répertoire.</br>
Sur Linux, celle-ci vérifier juste la présence d'un fichier (Elle ne fonctionne pas sur un fichier
+
Sur Linux, celle-ci vérifier juste la présence d'un fichier (Elle ne retourne pas vrai si un répertoire est vérifié
  
 
Pour vérifier la présence d'un répertoire, il faut passer par une boite param en cmd et utiliser un shell qui retourne yes si le répertoire existe et no sinon. 
 
Pour vérifier la présence d'un répertoire, il faut passer par une boite param en cmd et utiliser un shell qui retourne yes si le répertoire existe et no sinon. 
Ligne 16 : Ligne 16 :
  
 
 
 
 
Appel du script dans la boite cmd :  
+
Appel du script dans la boite cmd :  </br>
 
+
</br>
"[%PATH_BIN%]/custom/iffolderexist.sh" "[%PATH%]/../toto"
+
"[%PATH_BIN%]/custom/iffolderexist.sh" "[%PATH%]/../toto"</br>
 
+
</br>
Avec "[%PATH%]/../toto"  le répertoire à vérifier.
+
Avec "[%PATH%]/../toto"  le répertoire à vérifier.</br>
 
+
</br>
PS : Le chemin relatif est possible via les /../ par exemple
+
PS : Le chemin relatif est possible via les /../ par exemple</br>

Version du 8 janvier 2025 à 08:32

Une différence de comportement sur la boite ifFileExist entre Windows et Linux :

Sur windows, celle-ci vérifie la présence d'un fichier ET d'un répertoire.
Sur Linux, celle-ci vérifier juste la présence d'un fichier (Elle ne retourne pas vrai si un répertoire est vérifié) 

Pour vérifier la présence d'un répertoire, il faut passer par une boite param en cmd et utiliser un shell qui retourne yes si le répertoire existe et no sinon. 

Contenu du script : 

FOLDER=$1 
if [ -d $FOLDER ]; then
echo "yes"
else
echo "no"
fi

  Appel du script dans la boite cmd :  

"[%PATH_BIN%]/custom/iffolderexist.sh" "[%PATH%]/../toto"

Avec "[%PATH%]/../toto"  le répertoire à vérifier.

PS : Le chemin relatif est possible via les /../ par exemple