コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

ファイルパスをbashでかんたんに取るときは dirname を使うとかんたんに取得できる

$0とあわせての話

環境

$ bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
Copyright (C) 2007 Free Software Foundation, Inc.

事例

例えば "/hoge/huga/example/text.txt" が渡されたときに "/hoge/huga/example/ を取得したい場合

下記のようにかける

# ファイル名をdemo.shとする
filepath='/hoge/huga/example/text.txt'
echo $(dirname $filepath)
$ sh demo.sh 
/hoge/huga/example

関連リンク