Como Concatenar strings em Bash

Suraj Joshi 30 janeiro 2023
  1. Concatenação de strings Colocando uma variável de string após outra
  2. Concatenação de strings utilizando o operador +=
Como Concatenar strings em Bash

A concatenação de strings é uma das operações mais utilizadas na programação, que se refere a unir duas ou mais strings, colocando uma no final da outra. Para concatenar strings em Bash, podemos escrever as variáveis da string uma após a outra ou concatená-las utilizando o operador +=.

Concatenação de strings Colocando uma variável de string após outra

Podemos concatenar strings colocando variáveis de strings sucessivamente, uma após a outra.

STR1="Delft"
STR2="Stack"

STR3="$STR1$STR2"

echo "$STR3"

Resultado:

DelftStack

No exemplo acima, nós concatenamos STR1 e STR3 e atribuímos a string concatenada a STR3. As aspas duplas " " são utilizadas para evitar problemas de divisão ou globbing.

Utilizamos o comando echo para imprimir a saída.

Concatenar uma ou mais variáveis com strings literais

STR1="Delft"

STR3="${STR1}-Stack"

echo "$STR3"

Resultado:

Delft-Stack

Aqui, {} é utilizado para isolar a variável string do literal string.

Ela concatena a variável string STR1 com a string literal -Stack.

Concatena mais de duas strings juntas

Podemos colocar as variáveis de string e os literais sucessivamente para concatenar mais de duas variáveis de string juntas.

STR1="Delft"
STR2="-Stack"
STR3="Check them out!!"

STR4="${STR1}${STR2} has great programming articles.${STR3}"

echo "$STR4"

Resultado:

Delft-Stack has great programming articles.Check them out!!

Concatenar literais numéricos e literais de strings

As variáveis não são diferenciadas por Bash com base no tipo enquanto concatenadas. Elas são interpretadas como integer ou string, dependendo do contexto.

STR1="FIVE-"
STR2=5

STR4="$STR1$STR2"

echo "$STR4"

Resultado:

FIVE-5

Ela concatena as variáveis string FIVE- e 5 juntas.

Concatenação de strings utilizando o operador +=

O Bash também permite a concatenação de strings utilizando o operador +=. Simplesmente a+=b pode ser entendido como a=a+b.

STR1="Delft"
STR2="-Stack"

STR1+=$STR2

echo "$STR1"

Resultado:

Delft-Stack

Aqui, STR2 é anexado ao final de STR1, e o resultado é armazenado na variável STR1.

Para anexar vários valores, podemos utilizar um simples para loop.

NUMS=""
for NUM in 'One' 'Two' 'Three' 'Four'; do
  NUMS+="${NUM} "
done

echo "$NUMS"

Resultado:

One Two Three Four 
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn