DirクラスかPathnameクラスを使用すると取得できる
Dir.glob(pattern)
Dir.glob("RAILS_ROOT/public/stylesheets/*.css")
Pathname.glob(pattern)
Pathname.glob("RAILS_ROOT/public/stylesheets/*.css")
stylesheetsにあるcssファイルを取得してる
DirとPathnameの違い
文法的には対して変わらないのだけど返ってくる結果の型が違う
- Dirは文字列の配列
- PathnameはPathnameオブジェクトの配列
ワイルドカード指定
例えばstylesheets以下のディレクトリにあるcssも取得したい
Dir.glob("RAILS_ROOT/public/stylesheets/**/*.css")
ワイルドカード
| * | 空文字を含む任意の文字列 |
|---|---|
| ? | 任意の一文字 |
| [] | 括弧内のいずれかの文字 |
| {} | カンマで区切られた文字列の組み合わせ |
| /** | /*の0回以上の繰り返し(ディレクトリ) |
- /stylesheets
- style.css
- /admin
- admin.css
- /layout
- layout.css
みたいなファイル構成で全てのcssファイル名を取得したい時とか