![](/img/trans.png)
[英]“/bin/bash^M: bad interpreter: No such file or directory” error when executing a bash script from a cron job
[英]my_script throwing an error of bash: /home/usr/bin/my_sript: bin/bash/ bad interpreter: No such file or directory. How can I correct this error?
首先,該腳本是“ hello world”腳本,它存儲在〜/ jared / bin中。 這是腳本:
#!bin/bash
echo "hello world"
基於這個問題在這里 ,我想:
該文件可執行嗎? 我用了:
chmod 755 my_script
我運行了以下命令,這是輸出:
which bash
/斌/慶典
最后,
echo $PATH
/home/jared/bin:/home/jared/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/游戲:在/ usr /本地/游戲:/ SNAP /斌:/ usr / lib中/ JVM / java的8甲骨文/斌:/ usr / lib中/ JVM / JAVA-8 ORACLE / DB /斌:/ usr / lib目錄/ JVM / JAVA -8- ORACLE / JRE / bin中
當我在VIM中編寫腳本時,文件結尾為UNIX。 但是為了安全起見,我在Sublime和Atom中編寫了其他“ hello world”腳本,並且在運行它們時收到了相同的錯誤。
我什至嘗試在文件上運行dos2unix 。
該腳本將在直接從目錄運行時執行,如果我鍵入bash hello_world
,它將在任何目錄中執行。但是,如果我使用./
它將引發錯誤。
我不知道這是否有幫助,但似乎很相關:如果我不使用bash
或./
則可以在腳本上使用tab自動完成功能。
我擔心,我在這里犯了一個非常愚蠢的錯誤,希望有人准備讓我今天感到難以置信的愚蠢。 謝謝!
腳本的第一行應為
#!/bin/bash
^
它必須是#!
其次是bash的絕對路徑。 注意/bin
之前的斜杠。
第一行應如下所示:
#!/bin/bash
您忘記了'!'之后的'/'! 因此系統無法找到正確的bash路徑
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.