初心者のWEBデザイン

HTML,CSS、その他WEBデザインに関する事を記述していきます。

ShellScript パターン指定

Shellには変数に対して、削除するパターンが指定できます。

前方・後方からの検索があり、最短マッチと最長マッチで動作が変わります。

dirname・basenameと同じ動きをする記述です。

前方一致(前から検索)
# ${変数名##パターン} # 前方からの最長マッチを削除

SCRIPT='/Users/ユーザー名/Dropbox/Program/ShellScript/test.sh'
${SCRIPT##*/}  #変数に対してbasenameを行う ワイルドカードで一番最後の/までマッチする
#出力結果 test.sh
後方一致(後ろから検索)
# ${変数名%パターン} # 後方からの最短マッチを削除

SCRIPT='/Users/ユーザー名/Dropbox/Program/ShellScript/test.sh'

${SCRIPT%/*}  #動作はdirnameと同じ 後方から一番最初の/までを削除
#出力結果 /Users/ユーザー名/Dropbox/Program/ShellScript

dirnameやbasenameより数倍〜数十倍動作は早いです。