Sam*_*tte 11 debian bash startup-scripts
Debian(Raspbian)的新手,我在这个问题上挣扎了几天。我有一个要在启动时执行的启动脚本。
我执行了以下命令,以使脚本可执行并将其与默认参数一起添加到启动序列中。
sudo chmod 755 /etc/init.d/testsam
sudo update-rc.d testsam defaults
Run Code Online (Sandbox Code Playgroud)
尝试测试脚本时,我执行以下操作:
sudo /etc/init.d/testsam start
Run Code Online (Sandbox Code Playgroud)
但是这样做时,我收到一个错误:无法执行 /etc/init.d/testsam: No such file or directory。
我将脚本最小化为非常基本的,但仍然不知道实际原因。我希望有人能指出我正确的解决方案?这是当前的脚本。
#! /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
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助
小智 22
您的行尾可能有一个回车符 ( ^M
) #!
。
行的格式#!
非常严格,不允许回车,除非你的解释器实际上被调用/bin/bash^M
使用适当的 unix 编辑器创建的文件中永远不会有回车符,除非您特意添加它们。
编辑已使用 CRLF 行结尾的现有文件时,回车符可能对您隐藏。例如,vim 就是这样做的。但它也在[dos]
状态行中警告您该文件是 DOS 格式。然后:set fileformat=unix
,您可以说出并保存文件以进行转换。
归档时间: |
|
查看次数: |
26325 次 |
最近记录: |