İşletim sisteminde yakın zamanda oluşturulan yeni dosyaları görüntülemeniz gereken durumlar vardır. Bu genellikle bir yapılandırma dosyası oluşturan ve daha sonra nereye kaydedildiğini unutan bir sistem yöneticisi tarafından ihtiyaç duyulur. Ayrıca, bir dosyanın yakın zamanda değişip değişmediğini görmeniz gerektiği için yeni dosyalara bakma ihtiyacı ortaya çıkabilir. Genel olarak, durumlar çok farklı olabilir. Linux işletim sisteminin avantajı, geleneksel olarak belirli bir sorunu çözmek için çeşitli yollar sunmasıdır.
Linux'ta yeni dosyaları bulmanın en kolay ve en yaygın yolu Find
yardımcı programıdır. Mevcut ihtiyaçlarınıza bağlı olarak farklı parametreler aktarılır, örneğin yalnızca belirli bir takvim ayı veya gün aralığındaki dosyaları arayabilirsiniz, bunun nasıl yapılabileceği hakkında ayrıntılar için aşağıya bakın.
Dosyalar dizinler ve alt dizinler halinde görüntülenir ve sıralanır:
$ find /etc -type f -printf '%TY-%Tm-%Td %TT %p ' | sort –r
Ancak görebileceğiniz gibi, sonuç oldukça etkileyici, tüm listeden yeni dosyaları tanımak mümkün değil. Bu nedenle başka bir komut kullanmamız gerekiyor:
$ find /etc -type f -mmin -120
Sistemin yalnızca son bir saat içinde oluşturulmuş dosyaları araması gerektiğini bu şekilde belirtiyoruz.
Eğer son iki günü kapsamak gerekiyorsa, o zaman aşağıdaki komutu girin:
$ find /etc -type f -mtime -2
Bazen üçüncü seviye alt dizinlere girmeye gerek yoktur, bu nedenle bu eylemi hariç tutmak için maxdepth
özel seçeneğini kullanmamız gerekir:
$ find /etc -maxdepth 3 -mtime -2 -type f
Linux sisteminde son yedi gün içinde oluşturulan tüm yeni dosyaları görebiliriz, ancak son üç günün dikkate alınmaması istisnadır:
$ find /etc -type f -mtime -7 ! -mtime -3
Bu komutlar dosyanın yolunun çıktısını verir, ancak öznitelikleri görüntülemek için --exec
özel seçeneğini kullanmamız gerekir. Daha sonra, ls
yardımcı programını kullanarak her yeni dosyanın özniteliklerinin çıktısını alacağız:
$ find /etc -type f -mmin -120 -exec ls -al {} ;
Eğer bu komutu çok kafa karıştırıcı ve karmaşık buluyorsanız, başka bir komut kullanabilirsiniz:
$ find /etc -type f -mmin -120 | xargs ls -l
Burada zaten başka bir yardımcı program olan xargs
'ı kullanıyoruz. find yardımcı programı ayrıca belirli bir dosyadan daha yeni dosyaları bulmanızı sağlar. Örneğin, bir referans dosyası oluşturalım:
$ touch /tmp/test
Şimdi kök dizinde ondan sonra oluşturulmuş tüm yeni dosyaları bulun:
$ find / -type f -newer /tmp/test
Başka bir yönteme geçelim.
Bu yeni dosya arama yöntemi bir öncekinden çok daha basittir, bu nedenle Linux'a yeni başlayanlara tavsiye edilebilir. ls
komutu ayrıca bir dizindeki dosyaları oluşturulma tarihine göre sıralayabilir. Bunu yapmak için sadece ls komutunu çalıştırmamız gerekir:
$ ls -ltr
Çok fazla dosya olabilir, bu yüzden bu komutu da çalıştırmak akıllıca olacaktır:
$ ls -ltr | tail
Bunlar yeni dosyaları bulmanın tüm yolları değildir, ancak işi hızlı ve verimli bir şekilde yapmak için yeterlidir. Gördüğünüz gibi, temel find ve ls arama komutları sort, tail
ve grep
ile birleştirildiğinde daha da esnek hale getirilebilir.