Le message d'erreur suggère que le script que vous appelez a des \r
caractères incorporés , ce qui suggère à son tour qu'il a des fins de ligne de style Windows\r\n
au lieu des \n
fins de ligne attendues bash
.
En guise de solution rapide , vous pouvez supprimer les \r
caractères. comme suit:
sed $'s/\r$//' ./install.sh > ./install.Unix.sh
Remarque: La $'...'
chaîne est une chaîne entre guillemets ANSI-C pris en charge bash
, ksh
et zsh
. Il est utilisé pour s'assurer que le se \r
développe en un caractère CR réel avant de sed
voir le script, car toutes les sed
implémentations ne prennent pas en charge en \r
tant que séquence d'échappement.
puis exécutez
./install.Unix.sh --clang-completer
Cependant, la plus grande question est de savoir pourquoi vous vous êtes retrouvé avec \r\n
des fichiers -style - très probablement, d'autres fichiers sont également affectés.
Peut-être que vous exécutez Git sur Windows , où une configuration typique consiste à convertir les \n
sauts de ligne de style Unix en sauts de \r\n
ligne de style Windows lors de l' extraction de fichiers et de les reconvertir en \n
sauts de ligne uniquement lors de la validation .
Bien que cela ait du sens pour le développement sous Windows, cela gêne les scénarios d' installation comme ceux-ci.
Pour que Git extrait des fichiers avec des fins de fichier de style Unix sous Windows - au moins temporairement - utilisez:
git config --global core.autocrlf false
Ensuite, exécutez à nouveau vos commandes d'installation git clone
.
Pour restaurer le comportement de Git plus tard, exécutez git config --global core.autocrlf true
.
find . -type f -exec dos2unix {} \;