• ベストアンサー

ファイル名検索シェルについて

いつもお世話になっております。 ファイル名を検索したいのですが。 あるディレクトリ内のls -ltで表示した上から3つ目のファイル名の『0511091457』を変数にsetしたい場合どのようにしたら良いでしょうか? 例: audit.log.0511091453 audit.log.0511091455 audit.log.0511091457   ←このファイルの『0511091457』を変数としてセットしたい audit.log.0511091507 audit.log.0511091542 以上の場合どのように記述すればよいでしょうか? 恐れ入りますが、ご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

なんかcshかもしれないので。 set f=`ls -t|sed -n '3s/^.*?.//p'` set f=`ls -t|awk -F. 'NR==3{print $NF}'`

kakeru_333
質問者

お礼

ありがとう御座います。 解決いたしました。 今後も、宜しくお願い致します。

kakeru_333
質問者

補足

cshシェルです。言葉足らずですいません。 もし良かったら解説をいただけませんでしょうか? 宜しくお願い致します。

その他の回答 (1)

  • zsh
  • ベストアンサー率68% (11/16)
回答No.1

必要なのはファイル名だけですよね? であれば-lオプションは不要です。 ====================== #!/bin/sh set -- `ls -t` target_file=$3 echo $target_file ======================

kakeru_333
質問者

お礼

回答ありがとう御座います。 解決いたしました。これからも勉強していくので 宜しくお願い致します。

関連するQ&A

専門家に質問してみよう