@peccul is peccu

(love peccu '(emacs lisp cat outdoor bicycle mac linux coffee))

ディレクトリ内の最新のファイルをfindコマンドで探す

tl;dr

find -printf '%Ts %TF %TT %p\n' | sort

カレントディレクトリ以下のファイル一覧が以下のようなフォーマットで並ぶ

1618914659 2021-04-20 10:30:59.9416574000 ./path/to/file
1618995234 2021-04-21 08:53:54.0000000000 ./path/to/file2

ちょっと説明

%pがファイルパス。

%Tk がファイル変更日時を出力フォーマット指定で、k部分に各フォーマットを指定する。

TのかわりにAが最終アクセス、Cがステータス変更日時(?)

find(1) - Linux manual page

より引用

                     @      seconds since Jan. 1, 1970, 00:00 GMT, with
                            fractional part.

                     Time fields:

                     H      hour (00..23)

                     I      hour (01..12)

                     k      hour ( 0..23)

                     l      hour ( 1..12)

                     M      minute (00..59)

                     p      locale's AM or PM

                     r      time, 12-hour (hh:mm:ss [AP]M)

                     S      Second (00.00 .. 61.00).  There is a
                            fractional part.

                     T      time, 24-hour (hh:mm:ss.xxxxxxxxxx)

                     +      Date and time, separated by `+', for example
                            `2004-04-28+22:22:05.0'.  This is a GNU
                            extension.  The time is given in the current
                            timezone (which may be affected by setting
                            the TZ environment variable).  The seconds
                            field includes a fractional part.

                     X      locale's time representation (H:M:S).  The
                            seconds field includes a fractional part.

                     Z      time zone (e.g., EDT), or nothing if no time
                            zone is determinable

                     Date fields:

                     a      locale's abbreviated weekday name (Sun..Sat)

                     A      locale's full weekday name, variable length
                            (Sunday..Saturday)

                     b      locale's abbreviated month name (Jan..Dec)

                     B      locale's full month name, variable length
                            (January..December)

                     c      locale's date and time (Sat Nov 04 12:02:33
                            EST 1989).  The format is the same as for
                            ctime(3) and so to preserve compatibility
                            with that format, there is no fractional
                            part in the seconds field.

                     d      day of month (01..31)

                     D      date (mm/dd/yy)

                     F      date (yyyy-mm-dd)

                     h      same as b

                     j      day of year (001..366)

                     m      month (01..12)

                     U      week number of year with Sunday as first day
                            of week (00..53)

                     w      day of week (0..6)

                     W      week number of year with Monday as first day
                            of week (00..53)

                     x      locale's date representation (mm/dd/yy)

                     y      last two digits of year (00..99)

                     Y      year (1970...)