Penggunaan
Ini adalah daftar referensi cepat dari lembar contekan untuk perintah find linux, berisi opsi dan contoh umum. plugin
$ find [path ...] [options] [expression]
Wildcard
$ find . -nama "*.txt"
$ find . -nama "2020*.csv"
$ find . -name "json_*"
- [Referensi regex] (/regex) (cheatsheets.zip)
- Temukan lembar contekan (gist.github.com)
Contoh Opsi
| Opsi | Contoh | Deskripsi | Keterangan
|————-|——————————————-|———————————————|
| -tipe
| cari .
| -nama
| cari . -type f -name “*.txt” | Cari file berdasarkan nama | | -nama
| cari .
| -iname
| cari . -type f -iname “halo” | Cari berkas berdasarkan nama (tidak peka huruf besar/kecil) | | size
| cari .
| -ukuran
| cari . -size +1G | Menemukan file yang lebih besar dari 1G | | -user
| menemukan .
| -pengguna
| cari . -type d -user jack | Cari file jack | | -regex |
-regex| find /var -regex '.\*/tmp/.\*[0-9]*.file' | Menggunakan Regex dengan find. |
-maxdepth| find . -maxdepth 1 -name "a.txt" | Di direktori dan subdirektori saat ini | |
-mindepth
| -mindepth
| find / -mindepth 3 -maxdepth 5 -name pass | Di antara subdirektori level 2 dan 4 |
{.show-header}
Tipe
tipe d |
Direktori |
-ketik f |
File |
-tipe l |
Tautan simbolik |
-jenis b |
Blok yang disangga |
-jenis c |
Karakter tanpa buffer |
-jenis p |
Pipa bernama |
-jenis s |
Soket |
Ukuran ###
ukuran b |
blok 512-byte (default) |
-size c |
Byte |
ukuran k |
Kilobyte |
ukuran M |
Megabyte |
ukuran G |
Gigabyte |
ukuran T |
Terabyte (hanya BSD) |
ukuran P |
Petabyte _(hanya BSD) _ |
Ukuran +/-
Temukan semua file yang lebih besar dari 10MB
$ find / -size +10M
Temukan semua file yang lebih kecil dari 10MB
$ find / -size -10M
Temukan semua berkas yang berukuran tepat 10M
$ find / -size 10M
Menemukan Ukuran antara 100MB dan 1GB
$ find / -size +100M -size -1G
Awalan +
dan -
menandakan lebih besar dari dan kurang dari, seperti biasa.
Nama
Menemukan file menggunakan nama di direktori saat ini
$ find . -nama tecmint.txt
Menemukan berkas di bawah direktori home
$ find /home -nama tecmint.txt
Mencari berkas menggunakan nama dan mengabaikan huruf besar/kecil
$ find /home -nama tecmint.txt
Menemukan direktori menggunakan nama
$ find / -tipe d -nama tecmint
Menemukan berkas php menggunakan nama
$ find . -type f -name tecmint.php
Menemukan semua berkas php dalam direktori
$ find . -type f -name "*.php"
Izin
Temukan file yang izinnya 777.
$ find . -type f -perm 0777 -print
Menemukan berkas-berkas tanpa izin 777.
$ find / -type f ! -perm 777
Mencari file kumpulan SUID.
$ find / -perm /u=s
Menemukan file set SGID.
$ find / -perm /g=s
Menemukan berkas Hanya Baca.
$ find / -perm /u=r
Menemukan berkas yang dapat dieksekusi.
$ find / -perm /a=x
Pemilik dan Grup
Menemukan file tunggal berdasarkan pengguna
$ find / -user root -name tecmint.txt
Menemukan semua berkas berdasarkan pengguna
$ find /home -user tecmint
Menemukan semua berkas berdasarkan grup
$ find /home -group developer
Menemukan berkas tertentu dari pengguna
$ find /home -user tecmint -iname "*.txt"
Beberapa nama berkas
$ find . -type f \( -nama "*.sh" -o -nama "*.txt" \)
Menemukan file dengan ekstensi .sh
dan .txt
Beberapa dir
$ find /opt /usr /var -nama foo.scala -tipe f
Menemukan berkas dengan beberapa dir
Kosong
$ find . -ketik d -kosong
Menghapus semua berkas kosong dalam sebuah direktori
$ find . -ketik f -kosong -hapus
Menemukan Tanggal dan Waktu
Berarti
| Opsi | Deskripsi | Keterangan
|———|—————————————————————–|
| atime
| waktu akses (terakhir kali file dibuka) |
| mtime
| waktu modifikasi (terakhir kali file konten dimodifikasi) |
| ctime
| waktu perubahan (terakhir kali berkas inode diubah) |
Contoh
| Opsi | Deskripsi | Keterangan
|—————–|————————————————————|
| -mtime +0
| Dimodifikasi lebih dari 24 jam yang lalu | |
| -mtime -1
| Diubah kurang dari 1 hari yang lalu (sama dengan -mtime 0
) | | -mtime 1
| Diubah kurang dari 1 hari yang lalu (sama dengan -mtime 0
)
| -mtime 1
| Diubah antara 24 dan 48 jam yang lalu | | -mtime 1
| Diubah antara 24 dan 48 jam yang lalu
| -mtime +1
| Diubah lebih dari 48 jam yang lalu | | | -mtime +1w
| Diubah lebih dari 48 jam yang lalu
| -mtime +1w
| Terakhir diubah lebih dari 1 minggu yang lalu | | -mtime 0
| Terakhir diubah lebih dari 48 jam yang lalu
| -atime 0
| Terakhir diakses antara sekarang dan 24 jam yang lalu | | | -atime 0
| Terakhir diakses antara sekarang dan 24 jam yang lalu
| -atime -1
| Diakses kurang dari 24 jam yang lalu (sama dengan -atime 0
)
| -ctime -6h30m
| Status file berubah dalam 6 jam dan 30 menit terakhir
Contoh
Menemukan file yang diubah dalam 50 hari terakhir
$ find / -mtime 50
menemukan berkas-berkas yang diakses 50 hari terakhir
$ find / -atime 50
mencari berkas yang dimodifikasi 50-100 hari terakhir
$ find / -mtime +50 -mtime -100
menemukan file yang diubah dalam 1 jam terakhir
$ find / -cmin -60
menemukan berkas yang diubah dalam 1 jam terakhir
$ find / -mmin -60
menemukan berkas yang diakses dalam 1 jam terakhir
$ find / -amin -60
Cari dan
Temukan dan hapus
Menemukan dan menghapus beberapa file
$ find . -type f -name "*.mp3" -exec rm -f {} \;
Menemukan dan menghapus file tunggal
$ find . -type f -name "tecmint.txt" -exec rm -f {} \;
Menemukan dan menghapus berkas berukuran 100MB
$ find / -type f -size +100m -exec rm -f {} \;
Menemukan berkas tertentu dan menghapusnya
$ find / -type f -name *.mp3 -size +10m -exec rm {} \;
Temukan dan ganti
Temukan semua file dan ubah konten const
menjadi biarkan
$ find ./ -type f -exec sed -i 's/const/let/g' {} \;
Menemukan berkas yang dapat dibaca dan ditulis dan memodifikasi konten lama
menjadi baru
$ find ./ -type f -readable -writable -exec sed -i "s/old/new/g" {} \;
Lihat juga: sed lembar contekan
Menemukan dan mengganti nama
Menemukan dan akhiran (menambahkan .bak
)
$ find . -type f -name 'file*' -exec mv {} {}.bak\;
Menemukan dan mengganti nama ekstensi (.html
=> .gohtml
)
$ find ./ -depth -name "*.html" -exec sh -c 'mv "$1" "${1%.html}.gohtml"' _ {} \;
Temukan dan pindahkan
$ find . -name '*.mp3' -exec mv {} /tmp/music \;
Temukan dan pindahkan ke direktori tertentu (/tmp/music
)
Temukan dan salin
$ find . -name '*2020*.xml' -exec cp -r "{}" /tmp/backup \;
Temukan berkas yang cocok dan salin ke direktori tertentu (/tmp/backup
)
Temukan dan gabungkan
Gabungkan semua file csv dalam direktori unduhan ke dalam gabungan.csv
$ find download -type f -iname '*.csv' | xargs cat > merged.csv
Gabungkan semua berkas csv yang telah diurutkan dalam direktori unduhan ke dalam merged.csv
$ find download -type f -iname '*.csv' | sort | xargs cat > merged.csv
Menemukan dan mengurutkan
Menemukan dan mengurutkan secara menaik
$ find . -ketik f | mengurutkan
mencari dan mengurutkan secara menurun
$ find . -type f | sort -r
Find dan chmod
Temukan file dan atur izin ke 644.
Skrip ```shell $ find / -type f -perm 0777 -print -exec chmod 644 {} ;
Cari direktori dan setel izin ke 755.
``` skrip shell
$ find / -type d -perm 777 -print -exec chmod 755 {} \;
Temukan dan kompres
Temukan semua file .java
dan kompres menjadi java.tar
Skrip ```shell $ find . -type f -name “*.java” | xargs tar cvf java.tar
Cari semua berkas `.csv` dan kompres ke dalam `cheatsheets.zip`
``` skrip shell
$ find . -tipe f -nama "*.csv" | xargs zip cheatsheets.zip