Deve ser suficiente apenas para dígitos seguidos por um ou mais r
s:
lsof | grep -P '\b\d+r+\b'
Ou, se você não tiver o grep do GNU:
lsof | grep -E '\b[0-9]+r+\b'
Os \b
s marcam os limites das palavras e garantem que apenas campos inteiros sejam correspondidos. Alternativamente, se o seu grep suportar, você pode usar o -w
flag:
lsof | grep -wE '[0-9]+r+'
Então, usando isso, você pode obter os PIDs relevantes com
lsof | grep -wE '[0-9]+r+' a | awk '{print $2}'
@derobert apontou nos comentários abaixo que, se eu tivesse tido tempo para realmente ler as 2562 linhas de man lsof
, eu teria descoberto que ele oferece uma opção -F
que permite escolher os campos impressos. Para obter o tipo de acesso do arquivo, use a
:
lsof -p 28827 -F a