プロが教える店舗&オフィスのセキュリティ対策術

一般的にUNIX系OSで ls -l コマンド実行した場合6ヶ月以上前に修正したファイルは、
時刻までは出力されません。

下記のような表示になってしまします。

# ls -l foo
-rwxr-x--- 1 root root 3223 Nov 10 2004 foo

このようなとき Linux だと 下記のようにlsコマドを実行するとファイルの修正日時に関わらず
"YYYY/MM/DD HH:MI:SS"形式で表示してくれます。

ls -al --time-style=+'%Y/%m/%d %H:%M:%S'

Solarisの場合でも ls -E コマンドを使えば、同じようなことができそうです。

しかし、HP-UXのlsコマンドの場合は、--time-style や -E オプションが使えません。

何か良い方法はないでしょうか? ls でなくとも ファイルのタイムスタンプが
"YYYY/MM/DD HH:MI:SS"形式で取得できまれば、方法は問いません。

A 回答 (1件)

linuxで使われているGNU ls をインストールすれば、linuxと同じやりかたでできます。


新しいのは GNU coreutilsに含まれています。

あとは、タイムスタンプの取得をしたいだけなら、CとかPerlとかで stat を使うとか。
ファイル同士の比較ならtestコマンドを使うとか。
    • good
    • 0
この回答へのお礼

kmee様

お礼が遅くなり申し訳ありませんでした。

Perl + stat でうまく実装できました!!

ありがとうございました。

お礼日時:2011/08/31 04:14

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