Blocos condicionais de código no linux bash

Blocos condicionais de código no linux bash

Quase todo mundo sabe que && e || são muito úteis. operadores, por exemplo:

rm myf && echo "File is removed successfully" || echo "File is not removed"

Tenho uma dúvida: como colocar um bloco de comandos depois de && ou || operadores sem usar a função?

Por exemplo eu quero fazer:

rm myf && \
  echo "File is removed successfully" \
  echo "another command executed when rm was successful" || \
  echo "File is not removed" \
  echo "another command executed when rm was NOT successful"

Qual é a sintaxe adequada desse script?

Responder1

rm myf && {
  echo "File is removed successfully" 
  echo "another command executed when rm was successful"
} || {
  echo "File is not removed" 
  echo "another command executed when rm was NOT successful"
}

ou melhor

if  rm myf ; then
      echo "File is removed successfully" 
      echo "another command executed when rm was successful"
else
      echo "File is not removed" 
      echo "another command executed when rm was NOT successful"
fi

informação relacionada