dポイントプレゼントキャンペーン実施中!

Bシェルでファイルの更新日時(YYMMDD)を取得する方法を教えてください。
取得した更新日時を変数に代入したいと考えています。

ご回答をよろしくお願いいたします。

A 回答 (3件)

拡張機能を使わず、標準的な機能だけでやろうとすると


こんな感じでしょうか。

stat ファイル |
sed -ne 's/^Modify: \([0-9][0-9][0-9][0-9]\)-\([0-9][0-9]\)-\([0-9][0-9]\).*$/\1\2\3/p'
    • good
    • 6

stat や date にその機能がありますよ。



 stat -c '%y' FILE
or
 LC_TIME=C date -I -r FILE
    • good
    • 2

Bシェル自体には、ファイルの更新日時を取得する機能はないので、別コマンドでの出力結果を取り込む方法を考えてみては。



案1)lsやfindのタイムスタンプ列をとってくる。
案2)タイムスタンプを取得する専用プログラムを作成する:
 案2a)perlやpythonなどの高機能スクリプト処理系を使う。
 案2b)C言語処理系などを使う。

添付画像は、案2aでrubyを使った例。
「Bシェルでファイルの更新日時を取得」の回答画像1
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!