Início·Comandos de terminal

lsof

Processos e sistema

Uso

lsof -i :<port>

Lista todo arquivo e socket aberto, e assim responde "quem esta segurando a porta 3000"; sem sudo voce so ve seus proprios processos, entao um resultado vazio nao significa que a porta esta livre.

Opções comuns

OpçãoSignificado
-i :3000Which process holds port 3000, in either direction.
-i TCP -sTCP:LISTENListening TCP sockets only.
-tPrint bare PIDs, made for piping into kill.
-p <pid>Everything one process has open.
-u <user>One user's open files.
+D <dir>Every open file underneath a directory, recursively.
-n -PSkip host and port name lookups, which makes it much faster.

Exemplos

lsof -i :3000

The classic answer to "something is already using port 3000".

kill -9 $(lsof -ti :3000)

Kill whatever holds that port.

sudo lsof +D /var/log

Find the process keeping a deleted log file open.

O que está rodando e o que está comendo a máquina. Identificar vem antes de matar.

Como ler

  • Os colchetes [ ] marcam uma parte que você pode omitir.
  • As reticências … indicam que você pode listar vários.
  • As opções diferenciam maiúsculas: em alguns comandos -r e -R fazem coisas diferentes.

Perguntas

Q. O que lsof faz?

Lista todo arquivo e socket aberto, e assim responde "quem esta segurando a porta 3000"; sem sudo voce so ve seus proprios processos, entao um resultado vazio nao significa que a porta esta livre.

Q. Como se digita?

lsof -i :<port> — os colchetes marcam o que você pode omitir.

Q. Quantas opções vale a pena saber?

Aqui estão 7; a lista completa está em man lsof. Este comando fica em Processos e sistema.

Comandos relacionados

página man: man lsof