rc.local 命令有用户提示符并且不在启动时运行

rc.local 命令有用户提示符并且不在启动时运行

在 ubuntu 启动时我想要运行命令只需要求用户输入一个数字。

此命令应在 while 循环中递归运行。在用户输入一个数字后

一个 php 程序处理它并再次要求用户输入另一个数字。我已经让这个脚本完美运行。

然后将该脚本放入 rc.local 文件中以在启动时运行。当我手动运行“exec rc.local”命令时,它运行良好。

但是当我重新启动系统以在启动时执行命令时什么也没有发生。

我预计启动后会打开一个终端窗口并要求输入数字,就像手动运行文件后发生的情况一样。

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

set -x                         # tell sh to display commands before execution

while true; do php /var/www/html/eventica/artisan SendRfid:send; sleep 0; done

exit 0

答案1

我无法测试它。但我假设您可以创建一个 .sh 文件并在启动时通过 运行它crontab

set -x                         # tell sh to display commands before execution

while true; do php /var/www/html/eventica/artisan SendRfid:send; sleep 0; done

exit 0

创建一个 .sh 文件并保存。(例如,/etc/myscript.sh)测试运行它。如果出现权限被拒绝错误,请运行chmod +x /etc/myscript.sh

如果有效,您可以profile.d在登录时运行该脚本。

ln -s /etc/myscript.sh /etc/profile.d/myscript.sh

这将创建到 的符号链接profile.d

相关内容