Gelecekte değişiklik zamanı olan dosyaları bulmak için find -mmin komutunu kullanma


9

kullanabilirim

find . -mmin -5

son 5 dakika içinde değiştirilen dosyaları bulmak için. Ancak, negatif sayı vererek gelecekte değişiklik zamanı olan dosyaları bulmaya çalışırsam bunu findyapmayı reddeder:

find . -mmin --1

Standart Linux'ta gelecekteki değişiklik zamanını vermenin bir yolu var mı find?

Yanıtlar:


9

Gelecekte en az 5 gün içinde değiştirilen dosyaları bulmak için şunu kullanın:

find . -newermt "5 days"

Zaman belirtimi için sözdizimi, için belirtilene karşılık gelir date -d. Daha fazla bilgi için man findadlandırılmış anahtar hakkında bilgi -newerXYiçin bkz.

Örneğin -mminbunu yapmak için kullanmak mümkün değildir . GNU-newerXY buluntusuna karşı bir hata olarak rapor edildi ve yukarıda gösterdiğim gibi 4.3.3 (~ 2007) buluntularına uygulanarak çözüldü .


Görünüşe göre kullanılan GNU bulmak değildi, ama BusyBox.

Daha sonra touch -dve gelecekte bir tarih ile geçici bir dosya oluşturabilmeniz ve sonra -neweranahtarı aşağıdaki findgibi kullanabilmeniz gerekir :

touch -d "+5 days" tmpfile
find . -newer tmpfile

BusyBox touchbu tarih biçimini desteklemez, ancak prensip aynıdır ve finddestekler -newer. Referans dosyasının doğru bir tarihle oluşturulması, okuyucu için bir alıştırma olarak bırakılmıştır (her zaman yazmak uygundur).


Teşekkürler. Benim sorunum benim bulmak eski gömülü BusyBox bulmak ve binutil bulmak olmasıdır. Görünüşe göre standart linux yolu burada çalışmıyor. :(
Muxecoid

@Muxecoid: Cevabımı bazı BusyBox yorumlarıyla güncelledim.
Daniel Andersson

Bu, kazayla on saat sonra (zaten ofset donanım saatine uygulanan saat dilimi ofseti uygulandı) yeni bir makinede sorun çıkardı ve saati düzelttikten sonra bir configurekomut dosyası gelecekteki şeyler hakkında şikayet etti (bir bir buçuk saat kadar): find . -newermt '1 hour' | xargs touch -d '-9 hours've devam edebilirim. :-)
Chris Morgan
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.