Para os resultados de ps aux ou ps -ef, como faço para encontrar os comandos com colchetes?

0

Então eu obtenho os resultados de

root         2     0  0 Jan18 ?        00:00:00 [kthreadd]
root         3     2  0 Jan18 ?        00:00:23 [ksoftirqd/0]
root         4     2  0 Jan18 ?        00:00:00 [events/0]
root         5     2  0 Jan18 ?        00:00:00 [khelper]
root         8     2  0 Jan18 ?        00:00:00 [async/mgr]
root        44     2  0 Jan18 ?        00:00:00 [sync_supers]
root        46     2  0 Jan18 ?        00:00:00 bdi-default
root        48     2  0 Jan18 ?        00:00:00 [kblockd/0]
root        66     2  0 Jan18 ?        00:00:00 [kswapd0]
root        67     2  0 Jan18 ?        00:00:00 [ksmd]
root        68     2  0 Jan18 ?        00:00:00 aio/0
root       185     2  0 Jan18 ?        00:00:00 [jbd2/ubda-8]

Como faço para encontrar os comandos com os colchetes ao redor deles?

    
por linux8807 19.11.2013 / 18:26

3 respostas

1

Todos os métodos a seguir imprimem o que estiver dentro de [ e ] , mas somente se esse for o último campo:

ps aux | awk '$NF~/\[/{print $NF}'

A vantagem é que ele corresponderá apenas a [ no último campo. O equivalente usando grep é

ps aux | grep -o '\[.*\]$'

Você também pode fazer isso com o Perl

ps aux | perl -lne '/(\[.+?\])$/ && print $1'

e sed :

ps aux | sed -n 's/.*\(\[.*\]\)$//p'
    
por 19.11.2013 / 18:47
1

Que tal ps aux | grep '[' ?

    
por 19.11.2013 / 18:29
0

Na verdade, o comentário de schaiba é o mais próximo.

ps aux | grep ']'

Usando o colchete de fechamento, ele retorna todas as linhas que terminam em um colchete com o restante dos dados ps aux.

    
por 18.03.2014 / 01:00

Tags