Pesan kesalahan menunjukkan bahwa skrip yang Anda panggil memiliki \rkarakter yang disematkan , yang pada gilirannya menunjukkan bahwa ia memiliki akhiran baris gaya Windows\r\n daripada yang diharapkan \n-hanya akhir baris bash.
Sebagai perbaikan cepat , Anda dapat menghapus \rkarakter. sebagai berikut:
sed $'s/\r$//' ./install.sh > ./install.Unix.sh
Catatan: $'...'string adalah ANSI-C string dikutip didukung dalam bash, ksh, dan zsh. Ini digunakan untuk memastikan bahwa \rekspansi ke karakter CR aktual sebelum sedmelihat skrip, karena tidak semua sedimplementasi itu sendiri mendukung \rsebagai escape sequence.
lalu lari
./install.Unix.sh --clang-completer
Namun, pertanyaan yang lebih besar adalah mengapa Anda berakhir dengan \r\nfile -style - kemungkinan besar, file lain juga terpengaruh.
Mungkin Anda menjalankan Git di Windows , di mana konfigurasi tipikal adalah untuk mengonversi \njeda baris gaya Unix menjadi \r\njeda baris gaya Windows saat memeriksa file dan mengonversi ulang menjadi \n-hanya baris saat melakukan .
Meskipun ini masuk akal untuk pengembangan di Windows, ini menghalangi skenario penginstalan seperti ini.
Untuk membuat Git memeriksa file dengan akhiran file bergaya Unix di Windows - setidaknya untuk sementara - gunakan:
git config --global core.autocrlf false
Kemudian jalankan git clonelagi perintah instalasi Anda .
Untuk memulihkan perilaku Git nanti, jalankan git config --global core.autocrlf true.
find . -type f -exec dos2unix {} \;