gfind
テキストファイルを見つけるためにMacOSで実行されています。
gfind
結果のファイル名と生年月日を確認し、日付で並べ替えてページを付けようとします。これは可能ですか?
現在私は努力していますgfind . -name "*.txt" -printf "%f \t\t %Bc\n"
しかし、結果は次のようになります。
todo.txt Fri Mar 4 17:47:41 2022
99AC1EF5-6BE3-556B-8254-84A8764819E0.txt Fri Mar 4 17:49:08 2022
chrome_shutdown_ms.txt Fri Mar 4 17:48:07 2022
index.txt Fri Mar 4 17:48:05 2022
index.txt Fri Mar 4 17:48:05 2022
index.txt Fri Mar 4 17:48:06 2022
index.txt Fri Mar 4 17:47:46 2022
index.txt Fri Mar 4 17:48:01 2022
index.txt Fri Mar 4 17:48:01 2022
index.txt Fri Mar 4 17:48:05 2022
index.txt Fri Mar 4 17:48:05 2022
index.txt Fri Mar 4 17:48:06 2022
index.txt Fri Mar 4 17:48:06 2022
index.txt Fri Mar 4 17:47:46 2022
index.txt Fri Mar 4 17:48:06 2022
LICENSE.txt Fri Mar 4 17:48:07 2022
english_wikipedia.txt Fri Mar 4 17:48:07 2022
female_names.txt Fri Mar 4 17:48:07 2022
male_names.txt Fri Mar 4 17:48:07 2022
出力の一貫性を示すために出力を表にする方法はありますか?ファイル名と誕生日をもう少しエレガントに表示したいです。
よろしくお願いします!
答え1
ここでは以下を使用できます。
gfind . -name '*.txt' -printf '%-40f %Bc\n'
または
gfind . -name '*.txt' -printf '%40f %Bc\n'
ファイル名を左右に並べ替え、スペースで埋め、長さ40バイト(残念ながら文字や列ではない)を印刷します。
ファイル名は、制御文字、マルチバイト文字、幅0の文字、または二重幅文字を含まず、40バイトを超えない限りソートされます。
日付を最初に入力すると(Btime(%B)ではなくmtime(%T)を使用)、ファイルの寿命に役立つ情報がまったく反映されないため、これが必要なものかどうか疑われます。標準のYYYY-MM-DDTHH:MM:SS [.subsecond] + ZZZZなど、より便利で明確なタイムスタンプ形式を使用すると、ソートを心配する必要がなく、ソートが簡単になります。
find . -name '*.txt' -printf '%TFT%TT%Tz %f\n'