UNIX/Linux:在当前的Shell会话下杀死我的所有工作
时间:2020-01-09 10:42:03 来源:igfitidea点击:
在注销之前,如何杀死在当前登录shell(例如Bash或者KSH)下创建的所有UNIX作业?
可以使用job命令列出所有在后台或者挂起模式下运行的作业。
打开命令行终端(选择应用程序>附件>终端),然后执行以下内容以检查当前作业列表:
$ jobs
输出示例:
[1]- Running ping google.com > /dev/null & [2]+ Stopped ftp ftp.freebsd.org [3]- Running rsync -ar [email protected]:/backup/tree/ ~/.tree/ >/dev/null &
要列出其PID,请执行:
$ jobs -p
输出示例:
6020 6021 6023
要杀死在ksh或者bash shell下运行的所有作业,请执行:
$ kill `jobs -p`
或者
$ kill $(jobs -p)
您还可以使用pid杀死单个作业。
例如,按如下所示杀死具有PID 6021的ftp ftp.freebsd.org作业:
$ kill -9 6021
输出示例(按[Enter]键进行处理):
[2]+ Killed ftp ftp.freebsd.org