日付で終わるファイル名

日付で終わるファイル名

現在の日付(形式はDD MMM YYYY - 私が知っている限り変更できません)というコミットでログファイルを作成し、ファイル名を今日の日付として使用しています。

tail -n1その後、ファイルを読み取るBashスクリプトがあり、ファイルが欲しいです。

もし私がするなら

    filename=$(date +%d\ %b\ %Y) && echo $filename

わかりました。

    23 Feb 2015

これが私が望んで期待するものです。しかし、私がそうすれば

    filename=$(date +%d\ %b\ %Y) && tail -n1 $filename

わかりました。

    tail: cannot open `23' for reading: No such file or directory
    tail: cannot open `Feb' for reading: No such file or directory
    tail: cannot open `2015' for reading: No such file or directory

原因が何なのかよくわかりません。おそらく私の文字列の形式によるものかもしれません。使用するか、tail同じ結果を得るにcatは?

ベストアンサー1

変数を二重引用符で囲みます。変数を二重引用符で囲みます。変数を二重引用符で囲みます。

filename=$(date +'%d %b %Y') && tail -n1 "$filename"

おすすめ記事