Acho que as dicas do Aurélio são muito
boas, apesar de discordar de algumas poucas:
» O sistema só usa variáveis em letras
maiúsculas, portanto se vc usar maiúsculas, é grande a
possibilidade de criar uma que tenha homônima no sistema
(já vi isso ocorrer diversas vezes e é um erro enjoado
de localizar). Uso somente a 1ª letra de cada palavra em
maiúscula para facilitar o entendimento. É muito mais
fácil entender que ContLin é um contador de linhas do
que contlin;
» Acho que o uso de colchetes no lugar
do test, torna o código mais elegante e mais legível;
» Se vc pensar bem, verá que o operador
lógico || equivale a um else sem if. Assim sendo, sou
amplamente favorável ao seu uso. Como vc prefere?
if test ! -d dir
then
mkdir dir
cd dir
fi
ou
[ -d dir ] || mkdir dir
cd dir
Para uma pessoa ser
considerada programador em Shell tem de saber que [..]
representa o cmd test e tem de conhecer o uso de
operadores básicos como || e &&.
Por falar nisso, acho muito
interessante que um cara para programar em python,
java, perl, PHP, ... passa um tempão aprendendo a
linguagem para se aventurar a escrever or primeiros
programas básicos. Em Shell, o cara vai na Internet,
procura algo parecido com o que ele precisa e sai
ajustando por tentativa e erro até chegar a um
resultado parecido com o que ele queria.
A pergunta que mais escuto de
meus amigos (todos cobras criadas em Linux) é:
- Julio dá para fazer em
Shell ...
Nem espero a pergunta terminar, vou logo dizendo:
- A pergunta não é essa. A
pergunta é: qual é a melhor forma de fazer iso, assim,
assim em Shell, pq sempre existirão diversas formas de
executar a mesma tarefa.
É muito raro alguém se
dedicar a aprender Shell e o usos desses operadores,
de expansão de parâmetros e coisas mais rebuscadas é
que separam o profissional do curioso.