web-dev-qa-db-ja.com

linuxlocateコマンドを日付で並べ替え

Linuxのlocateコマンドは、ファイルをすばやく見つけるのに最適です。

私の質問:結果が日付/時刻順に返されるように、locateコマンドをどのように使用できますか?

5
mcaleaa

これは、ファイル名にスペースがない限り機能しますが、ファイルが多すぎるとエラーになります( http://www.gnu.org/software/coreutils/faq/#Argument-list-too-を参照) long ):

$ ls -td $(locate sh)
bash: /bin/ls: Argument list too long

これは、ファイル名にスペースやその他の文字が含まれている場合でも機能しますが、ファイルが多すぎると正しく並べ替えられません。

locate something -0 | xargs -0 ls -ltd

以下は常に機能します(時間がかかる場合があります)。

locate something -0 | xargs -0 stat -c'%Y %n' | sort -n
6
onionjake

どうですか:

ls -td $(locate something)

または

ls -td1 $(locate something)
3
RedGrittyBrick