Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

【シェルコマンド】#と%を使ってファイル名の一部や拡張子を取り出す

#(シャープ)と%(パーセント)をシェルスクリプトで用いるとファイル名の一部のみを取り出したり、拡張子を取り出したりできて便利

 

  • %は後ろから
  • #は前から

一致してるかどうか探す。
マッチしてる部分を取り除いて返す。

 

分かりやすいように使用例

$ FILENAME=hogehoge_2012.dat
$ echo ${FILENAME#hogehoge_}
2012.dat
$ echo ${FILENAME%.dat}
hogehoge_2012

 

これで拡張子のみを取り外したりできる。