Bash シェルスクリプト 単一の文字で分割する方法
環境
$ bash -version | head -n 1
GNU bash, バージョン 5.1.8(1)-release (x86_64-redhat-linux-gnu)
RedHat 9.2
構文
変数名1 = “文字列1,文字列2,文字列3,"
変数名2=(${変数名1/,/ })
Bash では、スペースを区切り文字として取り扱います。
使用例
STR="study,skill,become,smart"
# split
ARR=(${STR//,/ })
# 配列の1番目の要素
echo ${ARR[0]}
# 配列の2番目の要素
echo ${ARR[1]}
# ループで1要素ずつ出力
for S in "${ARR[@]}"; do echo "$S"; done
実行結果
study
skill
study
skill
become
smart