Como você pode obter o número dos processos em que o programa é iniciado?

2

Primeiro, salvei em um arquivo todos os processos de trabalho.

ps -el > file1

Minha ideia é contar o número de linhas no arquivo1 onde o vi está presente.

Eu tentei algo como wc -l | grep vi file1

Como é a maneira correta de fazer isso?

    
por user253956 09.04.2014 / 10:37

2 respostas

1

Seu código quase funciona, você só precisa mudar

wc -l | grep vi file1

para

grep vi file1 | wc -l

O operador de pipe usa a saída do programa à esquerda como entrada para o programa à direita.

    
por user148237 09.04.2014 / 10:47
0

Por que não usar pgrep :

pgrep "^vi" | wc -l

página man do pgrep:

  

SINOPSE

   pgrep [options] pattern
     

DESCRIÇÃO

   pgrep looks through the currently running processes and lists the process 
   IDs which matches the selection criteria to stdout.

EDITAR : (usando o arquivo):

ps aux > file1
awk '{ print  }' file1 | egrep '^vi' | wc -l
    
por Sylvain Pineau 09.04.2014 / 10:43