İlk eklenen tarih tarafından sipariş dock, varsayılan indirilenler klasörüyle aynı sırada dosyaları gösteren bir komut dosyası oluşturmak gerekir. Bu seçeneği bulamıyorum ls
.
Bunu yapmanın başka bir yolu var mı?
İlk eklenen tarih tarafından sipariş dock, varsayılan indirilenler klasörüyle aynı sırada dosyaları gösteren bir komut dosyası oluşturmak gerekir. Bu seçeneği bulamıyorum ls
.
Bunu yapmanın başka bir yolu var mı?
Yanıtlar:
Daha basit (Daha hızlı) çözüm:
mdls -name kMDItemFSName -name kMDItemDateAdded -raw * | \
xargs -0 -I {} echo {} | \
sed 'N;s/\n/ /' | \
sort
Eklenen tarih meta veri öğesi olarak saklanır kMDItemDateAdded
ve mdls
komut, kendisine bağımsız değişken olarak iletilen her dosya için verileri gösterir.
Bu nedenle, İndirilenler'deki tüm dosyalar için eklenen tarihi rastgele sırada * kabuğunuz tarafından genişletildiğinde dökümü yapmak için şunları yapabilirsiniz:
mdls -adı kMDItemDate Added ~ / İndirilenler / *
Bir yerine koymak için find ve sed / awk / perl / ne olursa olsun bir arada hacklemeniz gerekir, ls
ancak mdfind ls
bu çıktıyı yeniden keşfetmek ve ayrıştırmak yerine betiğiniz tarafından çağrılabilir .
Her zamanki gibi, soruyu yazdıktan sonra dosyalarda meta veri içeriği için kazmaya başladım ve bunu yazdım:
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
Temelde: 1. tüm dosyaları listeler 2. filtreler. ve .. 3. ad ve tarihi ekler, bir satır birbiri ardına alır 4. her iki satırı 1 satırda birleştirir 5. tarih, saat ve adı ayıklar 6. ters sıralar (datetime açık olduğundan, sıralar datetime)
Umarım başka birine yardımcı olur! :)
@bmike aslında, site benim itibarımı cevaplamam nedeniyle 8 saat sonra kendi sorumu cevaplamam için bir kısıtlama getirdi: D
ls -A
yerine -a
bunu yapmak zorunda kalmamak grep -v
için .
ve ..
.
adam ls
-U Use time of file creation, instead of last modification for sorting (-t) or long output (-l).