“find” komutunda dosyaların zaman damgasını listeler.


26

Bash, kullanırsam $ find ./ -name "*.sqlite", tüm sqlite dosyalarını geçerli dizinde listeler. Ayrıca dosyaların değiştirilmiş zamanını görmek istiyorum, herhangi biri bana yardım edebilir mi?

Yanıtlar:


34

findAşağıdaki ifadeye ekleyebilirsiniz :

-printf '%Tc %p\n'

gibi bir şey görmek

Sun Aug 14 06:29:38 2011 ./.nx/config/host.nxs

veya -printf '%TD %TT %p\n'için

08/14/11 06:29:38.2184481010 ./.nx/config/host.nxs

veya -printf '%T+ %p\n'eğer varsa GNU find, görmek için

2011-08-14+06:29:38.2184481010 ./.nx/config/host.nxs

Bu sonuncusu, eğer varsa, zaman ayırma amaçları için de kullanışlıdır.

Konuştuğu findyerin kılavuz sayfasına bakın printf.


-printfOS-X’de çalışmıyor. OS-X için çalışacak bu komuta eşdeğer var mı?
WanderingMind

@WanderingMind: OS-X'te , GNU'nun bulduğu gibi birçok UNIX uygulaması, özellikle GNU araçları sağlayan MacPorts'u kurmanızı öneririm .
enzotib

22

Bulunan dosyalar hakkında daha fazla bilgi almak için hızlı bir kesmek çıktı seçeneğini findkullanmaktır -ls.

find ./ -name "*.sqlite" -ls

Daha kesin sonuçlar için enzotib'in yanıtı açıktır.


Ben bir artı oy verdim, ama bu tarihi doğru göstermiyor, bu nedenle örneğin "en yeniyi" bulmak zor.
lpapp

Kötü bir şekilde ihtiyaç duyduğum -ls seçeneği hakkında bilgi edindiğim tek yer burası
Atul

-1

Zaman damgalı dosyaların listesini almak için aşağıdaki komutu kullanın.

$ find . -type f | xargs ls -l --time-style="+%d-%m-%Y" 

-3

Bu benim için çalışıyor:

$ find ./ -name "*.sqlite" -ls

4
Bu @ Caleb'in cevabının tam bir kopyası gibi görünüyor.
Chris Down
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.