作业列表并使用红帽中的 Linux 查找进程 ID



我已经编写了这个脚本,但是当我运行作业 -ls 和 ps|grep 时,我没有得到任何结果,这是我的脚本:

#!/bin/bash
trap 'echo -e "kill Command given n";exit 2'SIGINT SIGTERM
count=1
echo "start of the program"
while [ $count -le 10 ]
do
    echo "Loop #${count}"
    sleep 10
    count=$[ count + 1 ]
done
echo "end of program"

此语法无效:

trap 'echo -e "kill Command given n";exit 2'SIGINT SIGTERM

因为您没有有效的间距。请改用这个:

trap 'echo -e "kill Command given n"; exit 2' INT TERM

您可能也做错了其他事情,因为这对我来说很好用:

# Start 10 sleep processes in the background.
for x in {1..10}; do
    sleep 60 &
done
$ pgrep -c sleep
10

得到了期望的结果,这是当前正在运行的睡眠进程数的计数。如果您期待其他内容,请更新您的问题并提供一些预期输出的示例。

我用这个

ps | awk /$1/'{print $4; exit}'

相关内容

  • 没有找到相关文章

最新更新