Comment puis-je vérifier si le fichier existe dans le Makefile si je peux le supprimer?

Dans la partie propre de mon Makefile je suis en train de vérifier si le fichier existe avant de le supprimer définitivement. J'ai utiliser ce code mais je recevoir des erreurs.

Quel est le problème avec elle?

 if [ -a myApp ]
 then
     rm myApp
 fi

J'obtiens ce message d'erreur

 if [ -a myApp ]
 /bin/sh: Syntax error: end of file unexpected (expecting "then")
 make: *** [clean] Error 2
  • Est myApp une variable ou un nom de fichier?
  • monapp est pour myApplication c'est à dire le nom de fichier par le processus de construction.
  • Si vous voulez juste pour éviter de faire barrage si le fichier n'existe pas, rm -rf myApp pourrait être une alternative. Ou précédant la commande avec un tiret (-rm myApp) à faire pour faire ignorer l'erreur de rm (il sera cependant imprimer un vilain message).
  • Votre problème est que faire des traite chaque ligne dans une règle distincte de commande et envoie individuellement à la coque. C'est comme courir juste "si [ -a myApp]" sur son propre. Si vous obtenez cette erreur, vous avez besoin d'une solution qui a rejoint les lignes en un seul (à l'aide ) ou qui se termine avec chaque ligne indépendante de l'autre. Il ya maintenant plusieurs de ces ci-dessous.