Misalnya, server MySQL sedang berjalan di mesin Ubuntu saya. Beberapa data telah diubah selama 24 jam terakhir.
Apa skrip (Linux) yang dapat menemukan file yang telah diubah selama 24 jam terakhir?
Harap sebutkan nama file, ukuran file, dan waktu modifikasi.
Jawaban:
Untuk menemukan semua file yang dimodifikasi dalam 24 jam terakhir (hari penuh terakhir) di direktori spesifik tertentu dan sub-direktori:
Seharusnya sesuai dengan keinginan Anda
Yang
-
sebelumnya1
itu penting - itu berarti apa pun berubah satu hari atau kurang dari yang lalu. Sebuah+
sebelum1
akan bukan berarti ada yang berubah setidaknya satu hari yang lalu, sementara memiliki apa-apa sebelum1
akan berarti itu berubah dituntut satu hari yang lalu, tidak lebih, tidak kurang.sumber
-
sebelum nilai numerik?-ls
saat menggunakan dalam skripAnda bisa melakukannya dengan
Dari
man find
:sumber
Cara lain yang lebih manusiawi:
atau:
atau:
sumber
Pada sistem yang kompatibel dengan GNU (yaitu Linux):
Ini akan mencantumkan file dan direktori yang telah dimodifikasi dalam 24 jam terakhir (
-mtime 0
). Ini akan mencantumkan mereka dengan waktu modifikasi terakhir dalam format yang dapat diurutkan dan dibaca manusia (%T+
), diikuti oleh ukuran file (%s
), diikuti oleh nama file lengkap (%p
), masing-masing dipisahkan oleh tab (\t
).2>/dev/null
membuang output stderr, sehingga pesan kesalahan tidak mengeruhkan air;sort -r
mengurutkan hasil dengan paling baru dimodifikasi terlebih dahulu; dan| more
mencantumkan satu halaman hasil sekaligus.sumber
| less
bukan| more
, saya kira.Untuk orang lain yang mendarat di sini di masa mendatang (termasuk saya), tambahkan opsi -nama untuk menemukan jenis file tertentu, misalnya:
find /var -name "*.php" -mtime -1 -ls
sumber
Perintah ini bekerja untuk saya
sumber