尝试在Debian中执行启动脚本时没有这样的文件或目录错误

对Debian(Raspbian)来说很新,我在这个问题上苦苦挣扎了好几天.
我有一个启动脚本,我想在启动时执行.

我已执行以下命令,使脚本可执行并将其与认参数一起添加到启动序列中.

sudo chmod 755 /etc/init.d/testsam
sudo update-rc.d testsam defaults

在尝试测试脚本时,我执行以下操作:

sudo /etc/init.d/testsam start

但是当这样做时,我收到一个错误:无法执行/etc/init.d/testsam:没有这样的文件或目录.

我把脚本最小化到最基本的,但仍然没有实际原因的线索.我希望有人可以指出我正确的解决方案?这是当前的脚本.

#! /bin/bash

# /etc/init.d/testsam

case "$1" in
 start)
        #echo "starting script"
        ;;
 stop)
        #echo "stopping script"
        ;;
 *)
        #echo "Usage: /etc/init.d/testsam {start|stop}"
        exit 1
         ;;
esac

exit 0

谢谢你的帮助

您可能在#的末尾有回车符(^ M)!线.

#的格式! line非常严格,除非你的解释器实际上被称为/ bin / bash ^ M,否则不允许回车

在使用适当的unix编辑器创建的文件中永远不会有回车符,除非您不想添加它们.

编辑已使用CRLF行结尾的现有文件时,可能会隐藏回车符.例如,vim就是这样做的.但它也在状态行中说[dos]警告你文件是DOS格式.然后你可以说:set fileformat = unix并保存文件以进行转换.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...