Exécuter une commande si deux fichiers existent

Im essayant d’exécuter une commande si deux fichiers existent sur un emplacement

Si seulement l’un des deux scripts de fichier existant doit exécuter une autre commande, voici le script que j’ai essayé

if [-e / Users / NJ / Bibliothèque && / Users / NJ / Desktop], puis

faire écho à la fois

autre

echo seul

Fi

Vous devez séparer les tests dans leurs propres crochets:

if [ -e file ] && [ -e file ]; then echo "wow" fi 
 if [ -e "/Users/NJ/Library" -a -e "/Users/NJ/Desktop" ];then 

….

L’évaluateur [ condition ] utilise -a pour AND & -o pour OR. Voici un manuel.

OU utilisez la syntaxe ci-dessous.

 if [ -e "/Users/NJ/Library" ] && [ -e "/Users/NJ/Desktop" ];then 

….

Ce lien peut aider. Il liste tous les autres commutateurs aussi … http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html

Vous pouvez utiliser un double crochet insted d’un simple:

 if [[ -e /Users/NJ/Library && -e /Users/NJ/Desktop ]] ;then echo both else echo single fi 

if [-e / Users / NJ / Bibliothèque] && [-e / Users / NJ / Desktop], puis

faire écho à la fois

autre

echo seul

Fi

Ce modèle fonctionne bien