You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RHEL 8中kill命令--verbose选项无法使用问题求助

kill命令--verbose选项无法使用的解决方法

问题现象

执行以下命令时出现报错:

  1. 尝试先指定--verbose再指定信号:
$ kill --verbose -9 $(ps -eo pid,cmd | grep cmd_name | grep -v grep | awk '{ print $1 }')
bash: kill: -verbose: invalid signal specification
  1. 将信号前置后仍报错:
$ kill -9 --verbose $(ps -eo pid,cmd | grep cmd_name | grep -v grep | awk '{ print $1 }')
bash: kill: --verbose: arguments must be process or job IDs

移除--verbose选项后命令可正常执行,需要启用该选项查看信号发送详情。

--verbose选项说明(翻译自man手册)

--verbose
显示即将被kill发送信号的进程ID(PID)以及对应的信号信息。

问题根源

你当前使用的是bash内置的kill命令,它不支持--verbose长选项;而man手册中描述的是GNU coreutils包提供的/bin/kill命令,该版本才支持--verbose功能。

可以通过以下命令确认当前使用的kill类型:

type kill

若输出为kill is a shell builtin,则说明调用的是bash内置命令。

解决方案

方法1:调用外部kill命令(绝对路径)

直接使用/bin/kill执行命令,确保使用支持--verbose的版本:

/bin/kill --verbose -9 $(ps -eo pid,cmd | grep cmd_name | grep -v grep | awk '{ print $1 }')

方法2:跳过bash内置命令

使用command命令强制调用外部kill:

command kill --verbose -9 $(ps -eo pid,cmd | grep cmd_name | grep -v grep | awk '{ print $1 }')

选项顺序说明

GNU kill的正确语法为kill [OPTIONS] PID...,--verbose属于选项参数,需放在信号(如-9)和PID之前,确保命令解析正确。

内容的提问来源于stack exchange,提问作者user180574

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 19:36:14