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

对于Debian(Raspbian)来说,这是一个非常新的东西,而且我为这几天挣扎着。 我有一个启动脚本,我想在启动时执行。

我已经执行了下面的命令,使脚本可执行并将其默认参数添加到启动顺序中。

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

当试图testing脚本时,我执行以下操作:

 sudo /etc/init.d/testsam start 

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

我把脚本最小化到了最基本的地步,但还是没有一个真正理由的线索。 我希望有人能指出我正确的解决scheme? 这是目前的脚本。

 #! /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 )在#!的末尾#! 线。

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

    在用合适的unix编辑器创build的文件中永远不会有回车,除非你自己去添加它们。

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