Stéphane Chazelas escreveu:
algumas regras como
- citar sempre variáveis
- nunca use o operador
-a
or-o
(use vários[
comandos e os operadores&&
e||
shell)Torne
[
confiável com os shells POSIX.
Por que "nunca use o operador -a
ou -o
"?
Como posso "usar vários [
comandos e os operadores &&
e ||
shell)"?
(
e)
os operadores que agrupam comandos? Se eles são obsoletos, qual é o seu substituto? (2) Devetest "$1" -a "$2"
ser substituído portest "$1" && test "$2"
, ou por((test "$1" && test "$2"))
? Não precisamos do((..))
?()
e{}
como um substituto. (2) o primeiro;(())
é usado para expansão aritmética, aqui você deseja testar o status de saída da cadeia de testes; portanto, agrupe os testes em um subshell()
ou no shell atual{}
.(
e)
é quando você está usando-a
ou-o
. Como os últimos são obsoletos, obviamente os primeiros também não são mais necessários.