linux – 在没有PID的情况下杀死在后台运行的while循环
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 在没有PID的情况下杀死在后台运行的while循环,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1484字,纯文字阅读大概需要3分钟。
内容图文
![linux – 在没有PID的情况下杀死在后台运行的while循环](/upload/InfoBanner/zyjiaocheng/965/4b079d99aec746b991519a6c33994513.jpg)
我是Linux的一部分的初学者,所以请慢慢来.
我创建了一个在后台运行的“脚本”:
while true; do echo "I'm alive" >> alive.log ; done &
脚本的输出保存在文件alive.log中,该文件存在于用户的主目录中.
问题是我没有想法如何杀死循环因为它填满了我的磁盘空间,如果我想删除该文件,那么循环将创建一个新文件并用“我还活着”文本填充它,因为我问过它要做.
我试过用:
ps - aux | grep while
要么
ps - aux | grep alive
这两行的输出将为我提供我需要的PID,但问题是脚本是一个循环,这意味着PID每次运行时都会改变(递归),所以我不能使用PID来终止进程.
我也试过用:
pkill while
killall while
两行的结果为0(使用pkill时可以看到输出,而-c“0”或killall时:“while:没有找到进程”;
有什么建议吗?
解决方法:
我在一个名为while.sh的脚本文件中编写了这个句子,并通过shell运行它:
[edemon@CentOS workspace]$./while.sh
[edemon@CentOS workspace]$
没有PID.
我用top命令工具搜索我的while.sh,它告诉我:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4036 edemon 20 0 5268 756 436 R 97.3 0.0 0:07.93 bash
2469 root 20 0 94412 29m 10m S 7.8 2.0 1:49.19 Xorg
2788 edemon 20 0 74300 12m 10m S 1.9 0.9 1:38.79 nm-applet
4040 edemon 20 0 2708 1072 796 R 1.9 0.1 0:00.01 top
while的父亲进程是bash,所以我杀了4036. alive.log的大小不再增长.
内容总结
以上是互联网集市为您收集整理的linux – 在没有PID的情况下杀死在后台运行的while循环全部内容,希望文章能够帮你解决linux – 在没有PID的情况下杀死在后台运行的while循环所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。