другой результат подсчета количества процессов с командой PS

Сценарий A:

#!/bin/bash
cmdname=$1
process_num=$(ps -e | grep $cmdname | wc -l)
timestamp=$(date +%s)
echo -e  "$timestamp\t process_num=$process_num"

Сценарий B:

#!/bin/bash
cmdname=$1
process_num=$(ps -ef | grep $cmdname | wc -l)
timestamp=$(date +%s)
echo -e  "$timestamp\t process_num=$process_num"

Предположим, что в системе существует только один указанный процесс. Результат запущения скрипта равняется 1, но результат под управлением сценария B равняется 4. Я не знаю почему?

0
задан 13 February 2014 в 14:37
1 ответ

Это потому, что он также считает процесс сценария, например, вы проверяете процесс, который не запущен, например, Hello , когда вы проверяете его через свой первый процесс он выдаст 2, но когда вы запустите второй скрипт, он покажет счет как 4.

Вы можете проверить это, запустив сначала второй скрипт, а затем первый скрипт, после этого ваш первый скрипт также даст счет как 4

-1
ответ дан 5 December 2019 в 18:48

Теги

Похожие вопросы