English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O comando test no Shell é usado para verificar se uma condição é verdadeira, ele pode realizar testes numéricos, de caractere e de arquivo.
Parâmetro | Descrição |
---|---|
-eq | igual, então é verdadeiro |
-ne | diferente, então é verdadeiro |
-gt | maior, então é verdadeiro |
-ge | maior ou igual, então é verdadeiro |
-lt | menor, então é verdadeiro |
-le | menor ou igual, então é verdadeiro |
num1=100 num2=100 if test $[num1] -eq $[num2] then echo 'dois números são iguais!' else echo 'dois números não são iguais!' fi
Resultados de Saída:
dois números são iguais!
Os [] no código realizam operações aritméticas básicas, por exemplo:
#!/bin/bash a=5 b=6 result=$[a+b] # Note que os espaços não podem estar ao redor do sinal de igual echo "resultado é: $result"
o resultado é:
resultado é: 11
Parâmetro | Descrição |
---|---|
= | igual, então é verdadeiro |
!== | diferente, então é verdadeiro |
-string z | A comprimento da string é zero, então é verdadeiro |
-n String | A comprimento da string não é zero, então é verdadeiro |
num1="ru1noob" num2="w3codebox" if test $num1 = $num2 then echo 'Os dois strings são iguais!' else echo 'Os dois strings não são iguais!' fi
Resultados de Saída:
Os dois strings não são iguais!
Parâmetro | Descrição |
---|---|
-e Nome do arquivo | Se o arquivo existe, então é verdadeiro |
-r Nome do arquivo | Se o arquivo existe e é legível, então é verdadeiro |
-w Nome do arquivo | Se o arquivo existe e é gravável, então é verdadeiro |
-x Nome do arquivo | Se o arquivo existe e é executável, então é verdadeiro |
-s Nome do arquivo | Se o arquivo existe e pelo menos um caractere, então é verdadeiro |
-d Nome do arquivo | Se o arquivo existe e é um diretório, então é verdadeiro |
-f Nome do arquivo | Se o arquivo existe e é um arquivo comum, então é verdadeiro |
-c Nome do arquivo | Se o arquivo existe e é um arquivo especial de caractere, então é verdadeiro |
-b Nome do arquivo | Se o arquivo existe e é um arquivo especial de bloco, então é verdadeiro |
cd /bin if test -e ./bash then echo 'O arquivo já existe!' else echo 'O arquivo não existe!' fi
Resultados de Saída:
O arquivo já existe!
Além disso, o Shell também oferece com( -a )、Ou( -o )、Não( ! )três operadores lógicos são usados para conectar condições de teste, sua prioridade é: ! Mais alta, -a Segundo, -o Menor. Por exemplo:
cd /bin if test -e ./notFile -o -e ./bash then echo 'Pelo menos um arquivo existe!' else echo 'Os dois arquivos não existem' fi
Resultados de Saída:
Pelo menos um arquivo existe!