2015年9月15日火曜日

findの結果をソートする

Linux
Linuxでlsコマンドのオプションに日付または時間フォーマットする機能があります。
時間をフォーマットしてから、sortを利用して予想結果ができました。

find /home/a -newer /home/a/b.txt -exec ls -l --full-time {} \; | sort -k 6,7 > /savetofile.txt

上記のコマンドはlsの--full-timeを利用しています。
時間のフォーマットは
    2015-06-16 17:53:28.416228874 +0900
というふうに表示されます。

--full-timeの場合、時間フォーマットをすきではないとなると、好きなフォーマットを指定できます。

--time-styleがあります。これを使用すると、自由な時間フォーマットを取れます。

find /home/a -newer /home/a/b.txt -exec ls -l --time-style=+%Y-%m-%d\ %H:%M:%S {} \; | sort -k 6,7 > /savetofile.txt

残念ながら、LINUX上これらのコマンドは使えるけど、AIX上、--full-time、--time-styleオプションが提供していません。

AIX

下記のコマンドを実施して、結果が出ます。

find /home/a -newer /home/a/b.txt -exec ls -ltr "{}" + >/savetofile.txt

0 件のコメント: