See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 12633|Vastuse: 0

[linux] /bin/bash^M: bad interpreter: No such file or directory

[Kopeeri link]
Postitatud 13.06.2020 22:40:35 | | | |
Shell-skripti käivitamisel tagastatakse järgmine viga:

-bash: ./log_job.sh: /bin/bash^M: halb tõlgendaja: Sellist faili ega katault puudub
Viga põhjustab:

.sh skript on kirjutatud Windowsi süsteemis, seega võivad seal olla nähtamatud tähed; ülaltoodud veateate põhjal on väga tõenäoline, et skriptifail on DOS-formaadis, st iga rea lõpp on tuvastatud \r\n ja ASCII kood on 0x0D, 0x0A vastavalt.

Shell-skripti käivitamisel kuvatav viga tuleneb peamiselt sellest, et shell-skriptifail on DOS-formaadis, st iga rea lõpp on tähistatud \r\n-ga ja UNIX-formaadi faili lõpp on tähistatud \n-ga.

Eriline märkus: ^M ei ole klahvi nihutusega + 6 tekitatud ^ ja täht M, see on märk, selle ASCII on 0x0D, selle genereerimiseks tuleb esmalt vajutada CTRL+V ja seejärel sisestada (või CTRL+M)


lahus

On mitmeid viise, kuidas kontrollida, kas skriptifail on DOS- või UNIX-formaadis.

(1) Kontrolli skripti formaati: cat -A failinimi Kuvatulemuste põhjal võib hinnata, et dos-formaadis lõpev failirida on ^M$ ja unix-formaadis lõpev failirida on $.



(2) Muuta skripti vormingut: vi failinimi, et fail avada ja käivitada:set ff=unixSeadista fail unix-iks ja käivita:wq, salvestatud UNIX-formaadis.

  (3) Kontrolli skripti vormingut: cat -A failinimi Kuvamise tulemuse põhjal saab otsustada, et failirida, mis lõpeb dos-formaadis, on ^M$ ja failirida, mis lõpeb unix-formaadis, on $.







Eelmine:SSIS juhend 1 Sissejuhatus SQL Serveri integratsiooniteenustesse
Järgmine:Nginx logide jagamine ja kustutamine
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com