Bash 変数から指定範囲の文字列を抜き出す

 本記事では、例えば、data_12.csvの文字列変数に対して、6番目から2つまでの文字列12を抽出する雛形コードを載せました。
下図はその結果例です。12を抜き出して、拡張子に.txtをしてシンボリックリンクを貼っています。

f:id:HK29:20211211203018p:plain

■本プログラム

#!bin/bash

my_file="data_12.csv"

# my_fileの頭から6番目から2つまでを取得する場合
echo ${my_file:5:2}
# 拡張子を.txtにして、シンボリックリンク(ショートカット)を貼る
ln -s ${my_file} ${my_file:5:2}.txt

※Bad substitution というエラーが生じた場合の対象方法について
スクリプトファイルの1行目は#!bin/shではなくて、上記のように#!bin/bashとして、且つ、実行コマンドはsh ではなくて bashにすればOKです。
以上

<広告>