シェルで変数の文字列を結合する方法

シェルで変数の文字列を結合する方法

シェルスクリプトで変数の文字列を結合する方法はいくつかあります。
以下に代表的な方法を説明します。

方法1: 変数を連結する

シェルスクリプトでは、変数を直接連結するだけで文字列を結合できます。
例えば、以下のようにします。

#!/bin/bash

# 変数を定義
first_name="太郎"
last_name="山田"

# 変数を連結
full_name="${last_name} ${first_name}"

# 結果を表示
echo "$full_name"

ここでは、first_name と last_name という二つの変数を、${first_name} ${last_name} という形で連結しています。
${} の中に変数名を入れることで、変数の値を取り出すことができます。

方法2: printf コマンドを使う

printf コマンドを使って、文字列をフォーマットしながら結合する方法もあります。

#!/bin/bash

# 変数を定義
first_name="太郎"
last_name="山田"

# printf を使って文字列を結合
full_name=$(printf "%s %s" "$last_name" "$first_name")

# 結果を表示
echo "$full_name"

この方法では、printf コマンドにフォーマット指定子 %s を使って、変数を結合しています。
$(...) で囲むことでコマンドの結果を変数に格納します。

方法3: read コマンドで入力を結合

read コマンドを使って、ユーザーからの入力を結合することも可能です。

#!/bin/bash

# ユーザーからの入力を受け取る
read -p "Enter first name: " first_name
read -p "Enter last name: " last_name

# 変数を連結
full_name="$last_name $first_name"

# 結果を表示
echo "フルネーム: $full_name"

この方法では、read コマンドを使ってユーザーからの入力を変数に格納し、それを結合しています。

まとめ

シェルスクリプトで変数の文字列を結合するには、変数を直接連結する方法が最も一般的で簡単です。
また、printf コマンドを使うことで、柔軟に文字列を結合することもできます。
シェルの種類や目的に応じて、適切な方法を選択できます。