Eu tenho um script em que verifica se um pacote está instalado ou não e se a porta 8080 está sendo usada por um processo específico ou não. Não tenho experiência nenhuma com bash, então fiz algo assim:
if dpkg -s net-tools; then
if netstat -tlpn | grep 8080 | grep java; then
echo "Shut down server before executing this script"
exit
fi
else
echo "If the server is running please shut it down before continuing with the execution of this script"
fi
# the rest of the script...
No entanto, quando o script é executado, recebo dpkg -s net-tools
as netstat -tlpn | grep 8080 | grep java
saídas e o terminal, e não quero isso, como posso ocultar a saída e ficar com o resultado dos if
s?
Além disso, existe uma maneira mais elegante de fazer o que estou fazendo? E existe uma maneira mais elegante de saber qual processo está usando a porta 8080 (não apenas se estiver sendo usada), se houver?
grep -q
, eo mais recente festa&> ...
como sinônimo de> ... 2>&1