bashで変数から部分文字列を取得する方法まとめ パラメータ展開を利用して部分文字列を取得する オフセットと長さを指定して文字列を取得する #!/bin/bash HOGE="abcdef" # オフセット位置から長さ分を取得 echo ${HOGE:0:2} # -> ab echo ${HOGE:2:2} # -> cd echo ${HOGE:4:2} # -> ef # 長さを省略した場合はオフセットから最後まで出力 echo ${HOGE:2} # -> cdef # 長さにマイナスを指定した場合は最後からマイナス分引いた位置までの長さになる echo ${HOGE:0:-2} # -> abcd # オフセットの位置にマイナスを指定した場合は文法として別のパラメータ展開になる(デフォルト値の指定) # 指定した変数が空文字列の場合は右に指定した文字が入る echo ${HOGE