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

尝试在Debian中执行启动脚本时没有这样的文件或目录错误
对Debian(Raspbian)来说很新,我在这个问题上苦苦挣扎了好几天.
我有一个启动脚本,我想在启动时执行.

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

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

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

sudo /etc/init.d/testsam start

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

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

#! /bin/bash# /etc/init.d/testsamcase "$1" in start)        #echo "starting script"        ;; stop)        #echo "stopping script"        ;; *)        #echo "Usage: /etc/init.d/testsam {start|stop}"        exit 1         ;;esacexit 0

谢谢你的帮助

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

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

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

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

推荐阅读