我想创建一个简单的bash脚本,每5分钟打印一次文本。 脚本将在启动时启动。
#!/bin/bash
while true ; do
echo "You received a new mail"
sleep 300
done
我试着像这样使用nohup
nohup script.sh
但输出被重定向到nohup.out,我不想要它,并且该过程不在后台执行,它一直工作,直到我离开ctrl + C
答案 0 :(得分:3)
您可以通过运行
轻松地重定向stdout/stderr
nohup script.sh > someotherfile.
nohup
的点,它将在shell关闭时继续运行,但不会立即发送到后台。如果你想要它:
nohup script.sh > someotherfile &
如果您忘记&
通常ctrl-z
后跟bg
有效。
在任何情况下,如果你关闭shell /终端,它将继续运行。这是一个快速教程:http://linux.101hacks.com/unix/nohup-command/。
如果您要查找其他选项,请选中setsid
和crontab
。最后一个在运行和自动启动方面更灵活一些。这是第一个很好的参考:
https://askubuntu.com/questions/2368/how-do-i-set-up-a-cron-job#2369