gpt4 book ai didi

linux - 如何使用 shell 脚本去除 linux 进程 ID 中的多余字符

转载 作者:太空宇宙 更新时间:2023-11-04 11:38:29 25 4
gpt4 key购买 nike

我试图通过它的 pid 杀死一个进程,这是我从网上找到的脚本。

PID=`ps -ef | grep myProcess | grep -v grep | awk '{print $2}'`  
echo -e Killing myProcess with pid: $PID..

输出:killing myProcesswith pid: 13275^M..

有谁知道为什么会有 ^M ,我该如何摆脱它,因为 kill 命令运行失败:

**arguments must be process or job IDs**

我在网上搜索但仍然不知道如何克服这个问题..任何帮助表示赞赏!谢谢!

最佳答案

首先,你的语法错误。使用 $() 调用命令并将其输出存储到变量

PID=$(ps -ef | grep myProcess | grep -v grep | awk '{print $2}')

其次,您可以在一条 awk 语句中完成所有这些操作,而无需额外的 grep 进程。

ps -eo pid,args | awk '/myProces[s]/{cmd="kill  "$1;print cmd; }'

关于linux - 如何使用 shell 脚本去除 linux 进程 ID 中的多余字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5631040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com