Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 12633|Svar: 0

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

[Kopiera länk]
Publicerad på 2020-06-13 22:40:35 | | | |
När ett shell-skript körs returneras följande fel:

-bash: ./log_job.sh: /bin/bash^M: dålig tolk: Ingen sådan fil eller katalog
Felorsaker:

.sh skript är skrivet under Windows-systemet, så det kan finnas osynliga tecken, från felmeddelandet ovan, är det mycket troligt att skriptfilen är i DOS-format, det vill säga slutet på varje rad identifieras med \r\n, och dess ASCII-kod är 0x0D, 0x0A respektive.

Felet som visas vid exekvering av ett shell-skript beror främst på att shell-skriptfilen är i DOS-format, det vill säga slutet på varje rad identifieras med \r\n, och slutet på UNIX-formatfilen identifieras med \n.

Särskild notis: ^M är inte ^ och bokstaven M som produceras av knappskiftet + 6, det är ett tecken, dess ASCII är 0x0D, sättet att generera det är att trycka på CTRL+V först och sedan enter (eller CTRL+M)


lösning

Det finns flera sätt att kontrollera om skriptfilen är i DOS- eller UNIX-format.

(1) Kontrollera formatet på skriptet: cat -A filnamn Utifrån visningsresultaten kan man bedöma att filraden som slutar i dos-format är ^M$, och filraden som slutar i unix-format är $.



(2) Ändra formatet på skriptet: vi filnamn för att öppna filen och köra:set ff=unixStäll in filen till Unix och kör:wq, sparad i UNIX-format.

  (3) Kontrollera skriptets format: cat -Ett filnamn Utifrån visningsresultatet kan du bedöma att filraden som slutar i dos-format är ^M$, och filraden som slutar i unix-format är $.







Föregående:SSIS Tutorial 1 Introduktion till SQL Server Integration Services
Nästa:Nginx loggdelning och radering
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com