Usando o script bash Como posso verificar se uma string está dentro de outra string

1

Estou usando o script bash para executar os comandos psql (database):

O comando retorna uma resposta que contém ou não o nome do banco de dados / tabela.

Como posso verificar se meu banco de dados / tabela está na resposta retornada? Pseudo:

VAR_EXIST=$(command)
if $DATABASE_NAME in VAR_EXIST then
 VAR_EXIST= true
    
por user3541631 13.09.2018 / 10:47

1 resposta

2

Resposta retirada de: link

string='a needle in a haystack'
if [[ $string = *"a needle"* ]]; then
  echo "It's there!"
fi

Observe que os espaços na seqüência de caracteres da agulha precisam ser colocados entre aspas duplas, e os curingas * devem estar fora.

Adaptado ao seu caso:

VAR_EXIST=$(command)
if [[ $VAR_EXIST = *"$DATABASE_NAME"* ]]; then
  echo "DB exists!"
fi
    
por 14.09.2018 / 12:43