[英]“/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.