bashの小技を備忘録としてまとめます.

full pathからディレクトリpathを取得

ファイルのpathが$filepathのとき,ディレクトリ名を$dirpathに抜き出すにはdirnameを使って次のようにします.最後の”/”は含みません.

dirpath=$(dirname $filepath)

full pathからファイル名を取得

ファイルのpathが$filepathのとき,ファイル名$fnameだけを抜きだすにはbasenameを使って次のようにします.

fname=$(basename $filepath)

ファイル名$fnameから拡張子を削除したファイル名$coreを取得するには次のようにします.

fcore=${fname%.*}

ファイル名$fnameから拡張子$fextを取得するには次のようにします.ドット”.”は含みません.

fext=${fname##*.}