lsなどのコマンドラインツールからフォルダーに追加された日付順にファイルを一覧表示できますか?


10

ドックのデフォルトのダウンロードフォルダーと同じ順序でファイルを表示するスクリプトを作成する必要があります。にオプションが見つからないようですls

それを行う他の方法は?


どこに表示しますか?
Rob

コマンドライン!。了解!私はそのトリックをするワンライナーを書いてしまいました。評判があまりよくないので、自分の質問にはまだ答えられません。後でやります。
Ramiro Araujo 2013年

ラミロサイトへようこそ-いつでも自分の質問に答えることができるはずですが、答えを「承認済みとしてマーク」するための制限があります。必要に応じて私の回答を自由に編集したり、必要に応じて独自の回答を提供したりしてください。
bmike

回答:


6

よりシンプルな(より速い)ソリューション:

mdls -name kMDItemFSName -name kMDItemDateAdded -raw * | \
xargs -0 -I {} echo {} | \
sed 'N;s/\n/ /' | \
sort

1
うん、はるかに良い:)
Ramiro Araujo

誰かがそれらの各行の機能を詳しく説明できますか?また、このソリューションは、ターミナルで個別のコマンドラインとして(順次、順次)、またはスクリプト内でのみ実行できますか?
EJ Mak

4

追加された日付はメタデータアイテムとして保存されkMDItemDateAddedmdlsコマンドは引数として渡された各ファイルのデータを公開します。

したがって、ダウンロードによってすべてのファイルに追加された日付を、シェルによって展開される任意の順序でダンプするには、次のようにできます。

mdls -name kMDItemDateAdded〜/ Downloads / *

findとsed / awk / perl /の組み合わせを組み合わせてハッキングする必要がありますが、その出力lsを再考案しlsて解析する必要はなく、スクリプトによってmdfindを呼び出すことができます。


1
はい!私は後でそれを見つけて、私に多くのことを教えてくれた美しいワンライナーを作りました:)助けてくれてありがとう
Ramiro Araujo 2013年

2
私の回答を編集して、その1つのライナーを貼り付けてください-知識を共有してください!
bmike

2

さて、いつものように、質問を書いた後、ファイル内のメタデータコンテンツを掘り始め、結局これを書きました。

ls -a | \
grep -v '^\.$\|^\.\.$' | \
xargs -I {} mdls -name kMDItemFSName -name kMDItemDateAdded {} | \
sed 'N;s/\n//' | grep -v '(null)' | \
awk '{print $3 " " $4 " " substr($0,index($0,$7))}' | \
sort -r

基本的に:1.すべてのファイルをリストします2.フィルターします。および.. 3.名前と日付を1行ずつ追加します4. 2行ごとに1行にマージします5.日付、時刻、名前を抽出します6.逆順に並べ替えます(datetimeが前にあるため、並べ替えを行います)日付時刻)

それが他の誰かを助けることを願っています!:)

@bmike実際には、私の評判の欠如のために、私の質問を投稿してから8時間後にのみ、サイトが私自身の質問に答えるように制限を課しました:D


ああ、私は明確にするために1つのライナーを複数の行に分割しました:)
Ramiro Araujo 2013年

1
ls -A代わりに使用-aしてgrep -v.との必要はありません..
mfilej 2013年

0

man ls

 -U      Use time of file creation, instead of last modification for
         sorting (-t) or long output (-l).

1
いいえ、作成日ではなく、日付を追加する必要があります。ドックのデフォルトのダウンロードフォルダーと同じ
Ramiro Araujo 2013年

追加された日付は作成された日付と同じではありませんか?
Jason

1
Jason-作成日はファイルが作成された日付なので、Safariが別のコンピューターからファイルをダウンロードしたとき、そのダウンロード用に明確に作成されたか、ダウンロードが発生する数か月前または数年前に作成された可能性があります。このデータがOS Xに保存される場所の詳細については、私の回答を参照してください
。– bmike
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.