As maravilhas do Shell Script
Pode parecer um assunto batido, mas sempre há cada vez mais pessoas procurando sobre este tipo de informação na internet. Aqui vai uma introdução básica, que visa ensinar os iniciantes sobre as maravilhas de um terminal shell aberto. O Shell Script pode parecer simples, mas é uma ferramenta poderosa para resolver problemas rápidos e práticos.
Parte 3: O comando test
Este comando testa se uma determinada expressão lógica passada por parâmetro é verdadeira. Por exemplo:
test $var = "abc"
O comando irá testar se a variável $var é igual a "abc" e irá retornar verdadeiro caso sim.
Esta é uma lista das operações lógicas que podem ser feitas dentro de um test:
Testes em variáveis:
| -lt | Número é menor que (LessThan) |
| -gt | Número é maior que (GreaterThan) |
| -le | Número é menor igual (LessEqual) |
| -ge | Número é maior igual (GreaterEqual) |
| -eq | Número é igual (EQual) |
| -ne | Número é diferente (NotEqual) |
| = | String é igual |
| != | String é diferente |
| -n | String não é nula |
| -z | String é nula |
Testes em arquivos:
| -d | É um diretório |
| -f | É um arquivo normal |
| -s | O tamanho do arquivo é maior que zero |
| -r | É arquivo tem permissão de leitura |
| -w | O arquivo tem permissão de escrita |
| -nt | O arquivo é mais recente (NewerThan) |
| -ot | O arquivo é mais antigo (OlderThan) |
| -ef | O arquivo é o mesmo (EqualFile) |
Por exemplo, o comando:
test -d meu_diretório
Irá testar se o argumento passado é um diretório.
O comando test pode ser substituído por [ <expressão> ], mantendo o espaço entre os "[]" e a expressão. Então, para testar se um diretório é válido utilizando nossa nova sintaxe:
[ -d meu_diretório ]
abracos
Mlegidio