Substituição incorreta no terminal

1

Estou tentando usar a subtituição para matar processos, por exemplo:

kill ${lsof -t -i:3000}

e recebo o seguinte erro:

bash: ${lsof -t -i:3000}: bad substitution

Se eu executar echo $0 , ele está executando o bash.

Como posso resolver isso? Tenho certeza de que minha sintaxe de substituição está correta.

    
por lonel 06.01.2018 / 18:04

1 resposta

3

Você precisa colocar o comando lsof dentro de parênteses (comando de subsituição) ao invés de chaves para matar todos os processos (arquivos) que usam a porta 3000.

kill $( lsof -t -i:3000 )
    
por Kian 06.01.2018 / 18:46