Além das sugestões já fornecidas, aqui estão mais duas opções. Primeiro, você pode fornecer um comando alternativo que garantirá o sucesso:
grep "^${USER}:" /etc/passwd || true
(Basicamente, se o comando grep
falhar, isso será executado true
e, como isso sempre é bem-sucedido, ele considerará o comando composto bem-sucedido e não sairá do script.)
Como seu interesse é saber se o grep é bem-sucedido (ou seja, se você precisa adicionar o usuário), use-o como a condição em uma instrução if
:
if ! grep "^${USER}:" /etc/passwd; then
# Create the user account
fi
# Continue installation...
(Observe que o comando !
before the grep
nega o teste, portanto, ele executa o corpo da instrução if somente se grep
falhar. Como grep
faz parte de um comando composto, o script não não saia se falhar.)