Linuxnohup后台运行程序要求:存储已满,需要删除过时数据。条件:数据量大,删除时间长。直接执行删除命令肯定不行,因为一旦窗口关闭,命令就死了;那就不行了,因为这台电脑可能还有别的维修公司也会用这台pc,不安全。因此,有必要在后台运行程序:1。检查要删除的数据;2.编辑删除脚本;3.后台执行脚本(脚本有多个,每个窗口最好只执行一个);4.检查正在运行的后台进程;5.FG %将后台脚本移到前台执行;6.验证是否在后台执行;7.终止后台运行的删除脚本。
检查要删除的数据[root@NASdj]#df-h文件系统已用可用容量%已用挂载点/dev/sda 3192g 5.6g 177g 4%/dev/sda 190m 12m 169 M7 %/bootmpfs 3.9g 03.9g 0%/dev/shm/dev/sdb 10 Html/DJ/dev/sdb 211t 9.9t 113g 99%/var/www/Html/djbk要删除的数据:/var/www/htm
删除脚本[root @ nasscript]# catrm _ 2012 . sh #!/bin/bashrm-RF/var/www/html/DJ/2012[root @ NASscript]# catrm _ 2013 . sh #!/bin/bashrm-RF/var/www/html/djbk/2013注意:编辑完脚本后,需要授予脚本执行权限。
后台执行脚本(有多个脚本,每个窗口最好只执行一个)【root @ nasscript】# nohup。/RM _ 2012 . sh[root @ nasscript]# nohup。/rm _ 2013.sh注意:执行脚本时,两个脚本不要在同一个窗口执行。如果它们在同一个窗口中被执行,下一个将被执行。
正在运行的后台进程作业只能查看当前窗口的后台进程。如果在后台执行脚本的窗口关闭,此命令将无效。此时,您只能使用以下命令查看ps-ef来查看主机ps-ef|grep过滤条件的所有运行进程。
FG % n将后台脚本转到前台执行FG % n将当前后台运行的程序转到前台执行。如果执行完后台脚本命令后没有关闭当前窗口,可以执行jobs检查当前窗口中运行的后台进程的进程号,然后通过FG% n将后台进程转到前台执行,如果不想执行脚本,可以通过CTL C直接关闭窗口。
验证连接工具是否在后台执行,然后打开查看。这个时候,jobs就不能再用了。只能通过以下方式检查后台执行的脚本是否在执行[root @ nasscript]# PS-ef | greprmroot 2331890 nov 02?00:00:00[IB _ inform]root 237921009:53?00:00:00/bin/bash。/RM _ 2012 . shroot 2379323792009:53?00:00:23 RM-RF/var/www/html/DJ/2012 root 237971009:55?00:00:00/bin/bash。/RM _ 2013 . shroot 2379823797009:55?00:00:23 RM-RF/var/www/html/djbk/2013 root 2399823889010:36 pts/100:00:00:00 GRE PRM
终止后台运行的删除脚本。删除命令:kill-9进程号。注意:删除时不能删除搜索命令,否则会被关闭。