- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- シェルスクリプト/文法/文字列操作/部分的に文字列を取り出す へ行く。
- 1 (2010-06-02 (水) 03:40:24)
- 2 (2010-06-02 (水) 04:32:58)
- 3 (2011-04-03 (日) 13:53:41)
- 4 (2012-09-25 (火) 08:43:55)
文字列から部分的に文字列を取り出す
bashのパラメータ展開を使う。
先頭の文字列を取り出す
filename="2010-06-01.jpg" year=${filename%%-*}
- 変数filenameについて、右から"-*"に最長一致でマッチする文字列が削除され、"2010"が返る。
- ${filename%-*}の場合、最短一致になるので、"2010-06"が返る。
末尾の文字列を取り出す
filename="file.tar.gz" ext=${filename##*.}
- 変数filenameについて、左から"*."に最長一致でマッチする文字列が削除され、"gz"が返る。
- ${filename#*.}の場合、最短一致になるので、"tar.gz"が返る。