【シェルスクリプト基礎】文字列を結合するには?改行、スペースなども結合

ランダム

シェルスクリプトで文字列を結合したい場合などのやり方をまとめます。

変数と文字列の結合や改行、スペース、空白などを含めた結合、また引数と文字列なども結合していきます。

windowsのプロンプトで使用できるbatやpythonやphpを使用して、業務効率化やWebサイトを作成しております。javaやシェルスクリプトなど、様々なプログラミングを行った実績ありの筆者です。

目次

シェルスクリプトで文字列を結合する

script
Internet information data flow concept with binary number on screen, close up and shallow dept of field

シェルスクリプトで文字列を結合する基本は以下の通りです。

#!/bin/bash

str1=string1
str2=string2

echo $str1$str2

そのまま文字列を並べるだけで結合可能です。

変数に入れた文字列を結合して$で展開した結果をechoコマンドで表示しています。

シェルスクリプトを「bash」コマンドで実行してみます。

シェルスクリプトを実行するやり方は、以下の記事を参考にして見て下さい。

実行結果は以下の通りです。

[root@localhost workspace]# bash combine_strings.sh
string1string2

シェルスクリプトで文字列を結合できています。

シェルスクリプトで変数に文字列を結合する

シェルスクリプトで変数に文字列を結合するやり方は以下のコードを見て下さい。

#!/bin/bash

str1=string1

echo ${str1}plus

変数を{}で囲います。その後に文字列を記入すれば結合出来ます。

[root@localhost workspace]# bash combine_strings.sh
string1plus

変数と文字列が結合できています。

逆に変数の文字列から切り出して抽出する方法は以下の記事を参照下さい。

文字列と文字列を改行して連結する

改行を含めて連結する場合は以下のコードを見て下さい。

#!/bin/bash

str1=string1
str2=string2

echo -e "$str1\n$str2"
シェルスクリプトで文字列を改行して結合する手順
  • 改行コード「\n」を入れる
  • エスケープシークエンスを解釈するechoのオプション-eをつける
  • ダブルクォーテーションで囲む

これでシェルスクリプトを実行して見ます。

[root@localhost workspace]# bash combine_strings.sh
string1
string2

改行を含めて文字列を結合できています。

シェルスクリプトでスペースや空白を入れて文字列を結合する

文字列結合

空白やスペースを入れて文字列を結合するには以下のコードを見て下さい。

#!/bin/bash

str1=string1
str2=string2

echo $str1 $str2 #空白1つ
echo $str1  $str2 #空白2つだけど空白1つ分
echo "$str1  $str2" #空白2つ

シェルスクリプトでの「#」はコメントアウトを意味します。

空白を1つ入れる分にはそのまま文字列を記述すれば可能です。

空白を複数いれても実際は1つになります。

ダブルクォーテーションで囲む事で複数の空白も表現可能です。

では上のシェルスクリプトを実行して見ます。

[root@localhost workspace]# bash combine_strings.sh
string1 string2
string1 string2
string1  string2

想定通りの結果となりました。

シェルスクリプトで文字列と引数を結合する

文字列と引数を結合する場合は以下のコードを見て下さい。

#!/bin/bash

str1=string1
str2=string2

echo $str1$1

引数の1番目を参照したい場合は「$1」で可能です。

今まで通り「$1」を結合すれば可能になります。

では引数に「plus」を入れてシェルスクリプトを実行してみます。

[root@localhost workspace]# bash combine_strings.sh plus
string1plus

「string1」と「plus」の文字が結合できています。

シェルスクリプトで文字列を結合するのまとめ

文字列結合

シェルスクリプトで文字列を結合する基本は以下の通りです。

#!/bin/bash

str1=string1
str2=string2

echo $str1$str2

そのまま文字列を並べるだけで結合可能です。

その他にも様々な結合を試しました。

その他の文字列結合
  • 変数と文字列の結合
  • 改行を含めた文字列の結合
  • スペースや空白を入れた文字列の結合
  • 引数と文字列の結合

そのシェルスクリプトのコードを以下にまとめています。

#!/bin/bash

str1=string1
str2=string2
#文字列の結合基礎
echo $str1$str2

#変数と文字列の結合
echo ${str1}plus

#改行を含めた文字列の結合
echo -e "$str1\n$str2"

#空白やスペースを含めた文字列の結合
echo $str1 $str2 #空白1つ
echo $str1  $str2 #空白2つだけど空白1つ分
echo "$str1  $str2" #空白2つ

#引数と文字列の結合
echo $str1$1

使用できそうな文字列の結合があれば、利用してみて下さい。

ランダム

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次