我想sh.01
在启动时为特定用户运行 shell 脚本,到目前为止,我已经编辑了一个 crontab,crontab -e -u bristena
其中我写了@reboot /home/bristena/test1/sh.01
我的问题是 shell 脚本何时sh.01
实际运行?我尝试reboot
在终端中写入,但之后,当我再次单击终端时,sh.01
不会运行。我需要做什么才能看到 shell 脚本在启动时运行?太感谢了
答案1
为了使脚本在引导时运行,您需要在文件中的/etc/rc.local
行之前将其注册exit 0
。如果您没有此文件,请创建它并将以下内容粘贴到其中:
#!/bin/sh -e
#here your script.
/usr/sbin/mescripts
exit 0
有一个目录,/etc/network/
其中包含子目录if-down.d
, if-pre-up.d
, if-post-down.d
, if-up.d
。如果将脚本放置在这些子目录之一中,则当您关闭它、打开它之前、关闭它之后或打开网络时,它将相应地执行。
另一种方法是在接口文件中指定以下指令之一/etc/network/
:up
, pre-up
, post-up
, down
, pre-down
, post-down
。例如,该行:
post-up /path/to/script.sh
开启网络后,会执行script.sh脚本。更多详细信息可以在人机界面中找到。
无论如何,脚本必须有允许执行的权限,否则无法启动!