【初月無料キャンペーン中】gooドクター

お世話になります。
lsコマンドの使用方法で質問があります。

例えば本日(2008年11月24日)
ls -al
コマンドでファイルのタイムスタンプを確認すると
最終更新日時が「2008年11月23日22時41分08秒」のように6ヶ月以内のファイルは
11月23 22:41
と表示されますが、
最終更新日時が「2007年01月06日18時05分04秒」のように6ヶ月以上昔のファイルは
1月 6 2007
と表示されます。

最終更新日時がいつであっても常に
2007/01/06 18:05:04
のように固定の
YYYY/MM/DD HH:MM:SS
形式(秒も出力し、ゼロサプレスも行わない形式)で表示したいのですが
その方法がわからずに困っています。
(ログファイルとかで秒が表示されるとうれしいです。)

御存知の方、よろしくお願いします。

gooドクター

A 回答 (2件)

CentOS 5.2 の /bin/ls (ls (GNU coreutils) 5.97)だと、


時刻の表示形式を指定する --time-style オプションがあります。

例えばこんな感じです。
ls -l --time-style=+%c
-rw------- 1 root root 1095 2008年04月11日 17時16分05秒 anaconda-ks.cfg
-rw-r--r-- 1 root root 7 2008年06月29日 13時19分57秒 bar
...
ls -l --time-style=full-iso
-rw------- 1 root root 1095 2008-04-11 17:16:05.000000000 +0900 anaconda-ks.cfg
-rw-r--r-- 1 root root 7 2008-06-29 13:19:57.000000000 +0900 bar
...

参考URL:http://www.geocities.jp/fut_nis/html/coreutils-j …
    • good
    • 1
この回答へのお礼

御回答ありがとうございました。
教えて頂いた内容をもとにいくつか試したところ、

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

とすれば日本語環境(LANG環境変数がja_JP.UTF-8)であっても
YYYY/MM/DD HH:MM:SS
の固定形式で表示されました。
ありがとうございました。

お礼日時:2008/11/25 21:50

ls -alT


くらいで我慢するか、自分で作る。
    • good
    • 0
この回答へのお礼

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

お礼日時:2008/11/25 21:48

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

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

人気Q&Aランキング