我正在执行一个无限循环,从命令行执行一个使用CURL的休息调用。我将其余的o/p重定向到一个文件。我在命令的末尾附加了一个“&”,以便它进入后台。 不幸的是,终端退出了。 但我看到该过程仍在不断写入o/p文件。 但是,我看不到任何使用命令作业运行的后台作业。 即使我使用ps/lsof/fuser来查找进程ID,以便我可以手动杀死它。 但是没有任何命令给我返回进程ID。 我甚至试图将文件更改为只读模式,但我仍然看到文件不断增长。查找后台进程的进程ID
最后我发现chattr命令会限制写入的文件。
但是在这种情况下,我会在哪里找到负责的进程ID。
touch /var/log/test_mon_vm.log;while true; echo "start....." >>/var/log/test_mon_vm.log;echo $(date) >> /var/log/test_mon_vm.log; do /usr/bin/curl -I --user rhqadmin:rhqadmin http://localhost:7080/rest/plugins?name=Samba 2>/dev/null | head -n 1 >> /var/log/test_mon_vm.log; echo "end....." >> /var/log/test_mon_vm.log;echo >>/var/log/test_mon_vm.log;echo >>/var/log/test_mon_vm.log;sleep 1;done &
你可以提及'while'循环代码吗? – Prabhu