Perguntas com a marcação «test»

Trata-se do utilitário Unix "test", também chamado como "[", ou sua variante de sintaxe de shell [[…]]. Para perguntas sobre o teste de software e configurações, use a tag "testing".

50
Como exatamente “/ bin / [” funciona?

Sempre fico surpreso que na pasta /binexista um [programa. É assim que se chama quando estamos fazendo algo como if [ something ]:? Ao chamar o [programa explicitamente em um shell, ele solicita uma correspondência ]e, quando eu forneço o colchete de fechamento, ele parece não fazer nada, não...

40
Teste de festança: o que "= ~" faz?

#!/bin/bash INT=-5 if [[ "$INT" =~ ^-?[0-9]+$ ]]; then echo "INT is an integer." else echo "INT is not an integer." >&2 exit 1 fi O que o líder ~faz na expressão regular

27
Erro no teste de colchete quando a string é um parêntese esquerdo

Eu costumava estar confiante sobre o fato de que citar seqüências de caracteres é sempre uma boa prática para evitar que o shell a analise. Então me deparei com isso: $ x='(' $ [ "$x" = '1' -a "$y" = '1' ] bash: [: `)' expected, found 1 Tentando isolar o problema, obtendo o mesmo erro: $ [ '('...

24
Começando com argumentos bash: -lt e -gt

Estou começando com o bash e achei o seguinte: if test $first -lt $second then echo $first is lower than $second else if test $first -gt $second then echo $first is higher than $second else echo $first and $second are equals fi fi Para ler o script e executá-lo, eu sei o que ele faz, mas...

23
Por que usar aspas duplas em um teste [[]]?

Digamos que temos 2 números inteiros em um script bash: value1=5 value2=3 Então, por que precisamos usar aspas duplas no caso de um teste? Por exemplo: if [[ "$value1" -eq "$value2" ]] Por que não usar apenas o seguinte? if [[ $value1 -eq $value2 ]] Para mim, as aspas duplas não fazem...

22
Comparando duas strings no Bash

Eu tenho o seguinte ifbloco no meu script bash: if [ ${PACKAGENAME} -eq kakadu-v6_4-00902C ]; then echo "successfully entered if block!!" fi A execução do script não está entrando no meu ifbloco, embora $PACKAGENAMEseja igual a kakadu-v6_4-00902C. O que estou fazendo