logo

Bash Concatenate String

У цій темі ми пояснили, як додавати або об’єднувати рядки в сценаріях оболонки Bash.

У сценаріях bash ми можемо додавати або об’єднувати два або більше рядків разом, що відомо як конкатенація рядків. Це одна із загальних вимог до будь-якої мови програмування. Для виконання конкатенації рядків використовується спеціальний символ або вбудована функція. Однак Bash не містить жодної вбудованої функції для об’єднання рядкових даних або змінних. Найпростіший спосіб виконати конкатенацію рядків у bash — це записати змінні поруч.

Наприклад, Припустимо, що у нас є два рядки (тобто «ласкаво просимо» & «до javatpoint»), ми об’єднуємо обидва рядки разом і створюємо новий рядок («ласкаво просимо до javatpoint»). Ця концепція називається конкатенацією рядків.

сірий код

Команда

Приклад команди для конкатенації рядків можна визначити так:

 str3='$str1$str2' 

Примітка:Дотримуйтеся наведеної вище команди; перед або після оператора присвоєння (=) не повинно бути пробілів. 'str' використовується для позначення рядків.

Ця команда об’єднає значення str1 і str2 і збереже їх у третій змінній str3.

Нижче наведено кілька прикладів, що демонструють різні способи конкатенації рядків:

Приклад 1: Запис змінних поруч

Це базовий приклад конкатенації рядків, і нам не потрібні додаткові оператори чи функції в цьому методі.

Скрипт Bash

 #!/bin/bash #Script to Concatenate Strings #Declaring the first String str1='We welcome you' #Declaring the Second String str2=' on Javatpoint.' #Combining first and second string str3='$str1$str2' #Printing a new string by combining both echo $str3 

Вихід

 We welcome you on Javatpoint. 

Приклад 2: використання подвійних лапок

Інший простий спосіб полягає у використанні змінних усередині рядка, який визначено подвійними лапками. Рядкову змінну можна застосувати в будь-якій позиції рядкових даних.

Скрипт Bash

 #!/bin/bash #Script to Concatenate Strings #Declaring String Variable str='We welcome you' #Add the variable within the string echo '$str on Javatpoint.' 

Вихід

 We welcome you on Javatpoint. 

Приклад 3: Використання оператора додавання з циклом

Більшість популярних мов програмування підтримують оператор додавання (+=), який є комбінацією знака плюс і рівність. Він додасть нові рядки в кінець рядкової змінної.

Скрипт Bash

 #!/bin/bash echo 'Printing the name of the programming languages' #Initializing the variable before combining lang='' #for loop for reading the list for value in 'java''python''C''C++'; do lang+='$value ' #Combining the list values using append operator done #Printing the combined values echo '$lang' 

Вихід

java порівнянна
Bash Concatenate String

Приклад 4: Використання функції Printf

У bash, printf це функція, яка використовується для друку та об'єднання рядків.

Скрипт Bash

 #!/bin/bash str='Welcome' printf -v new_str '$str to Javatpoint.' echo $new_str 

Вихід

 Welcome to Javatpoint. 

Приклад 5: Використання літеральних рядків

Конкатенацію рядка також можна виконати з літеральним рядком за допомогою фігурних дужок {}. Їх слід використовувати таким чином, щоб змінна не змішувалась із літеральним рядком.

Скрипт Bash

 #!/bin/bash str='Welcome to' newstr='${str} Javatpoint.' echo '$newstr' 

Вихід

 Welcome to Javatpoint. 

Приклад 6: Використання підкреслення

Використання підкреслення для конкатенації рядка в оболонці bash є одним із поширених завдань. Здебільшого використовується для призначення імен файлам.

Скрипт Bash

 #!/bin/bash str1='Hello' str2='World!' echo '${str1}_${str2}' 

Вихід

функція виклику javascript з html
 Hello_World! 

Приклад 7: Використання будь-якого символу

Скрипт Bash

 #!/bin/bash #String Concatenation by Character (,) with User Input read -p 'Enter First Name: ' name read -p 'Enter State: ' state read -p 'Enter Age: ' age combine='$name,$state,$age' echo 'Name, State, Age: $combine' 

Вихід

Bash Concatenate String

Висновок

Конкатенація рядків є однією з обов’язкових функцій у мовах програмування для створення значущого результату. Майже всі можливі способи об’єднання рядків у bash пояснюються в цій темі.