GNU/Linux >> Belajar Linux >  >> Linux

Perintah Direktori find Linux:Dijelaskan

Anda mungkin perlu menemukan direktori di sistem operasi berbasis Linux Anda, dan Anda menderita karena Anda tidak tahu perintah sebenarnya untuk menemukan lokasi berbagai file yang ada di sistem operasi berbasis Linux Anda. Perintah direktori find Linux digunakan untuk tujuan ini.

Perintah Find digunakan untuk mencari lokasi file baik di sistem berbasis Unix atau Linux. Perintah find disertakan dalam paket "findutils", dan ada di semua distribusi Linux. Anda dapat mencari direktori dan file sambil menerapkan berbagai kondisi. Tindakan akan diambil sesuai dengan kondisi yang Anda terapkan yang akan memengaruhi hasil.

Pengantar perintah find directory Linux

Bentuk paling sederhana dari perintah find diberikan oleh:

find [paths] [expression] [actions]

Bentuk lain dari perintah find diberikan seperti ketika perintah find dieksekusi, ia mencari direktori dan file di setiap jalur. Setelah menemukan direktori di jalur yang disediakan, maka ia mulai mencari file dan direktori lain di jalur yang sama. Proses ini tidak berhenti sampai Anda mencari semua file di jalur yang Anda nyatakan.

find /where/to/look/up criteria action
find /dir/path/look/up criteria action
find /dir/path/look/up -name "name-of-dir"
find /dir/path/look/up -name "pattern"
find /dir/path/look/up -name "name-of-dir" -print
find /dir/path/look/up -name "name-of-dir"
find / -name "name-of-dir"
find / -type d -name "name-of-dir"
find / -type d -name "name-of-dir" 2>/dev/null

Mencari semua direktori dan file

Jika Anda ingin daftar semua file dan direktori dari jalur yang Anda tentukan, maka Anda dapat melakukannya dengan menentukan jalurnya. Misalnya, jika Anda ingin daftar semua file dari jalur usr/share, maka Anda dapat menggunakan perintah berikut:

find /usr/share

Jika Anda ingin membuat daftar file dari lebih dari satu direktori sekaligus maka Anda dapat menggunakan perintah berikut:Setelah Anda menjalankan perintah ini, daftar semua direktori dan file akan terdaftar di konsol dari jalur yang Anda tentukan. Daftarnya bisa sangat panjang berdasarkan konten yang Anda simpan.

find /bin /usr/li

Misalkan Anda ingin daftar konten hadir dalam pekerjaan Anda saat ini secara langsung. Ini dapat dilakukan dengan cepat dengan meletakkan titik (.) setelah perintah find, seperti ini:

find .

Jika entah bagaimana Anda lupa untuk meletakkan titik setelah perintah find, maka data dari direktori kerja saat ini akan ditampilkan dengan menjalankan perintah find saja.

find

Memfilter item dengan namanya

Sering kali, ada kebutuhan untuk memfilter item yang berbeda dengan bantuan nama mereka. Perintah find directory Linux juga dapat membantu Anda melakukannya.

Misalkan Anda ingin mencari file bernama NEW.txt yang terletak di dalam direktori /Desktop maka Anda dapat menggunakan tombol "-name" seperti yang ditunjukkan di bawah ini:

find Desktop -name NEW.txt

Memanfaatkan sakelar "-nama" lebih peka terhadap huruf besar-kecil. Untuk menggunakan perintah case-insensitive, Anda dapat menggunakan "-iname" sebagai ganti "-name"

find Desktop -iname new.txt

Kedua switch ini mendukung "wildcard" yang digunakan sebagai pengganti karakter yang tidak dikenal. Wildcard "* " digunakan untuk menampilkan sejumlah karakter yang tidak diketahui sedangkan "?" digunakan untuk satu karakter yang tidak diketahui.

Untuk menggunakan wildcard ini, Anda harus meletakkan parameter perintah "name / iname" di dalam tanda kutip ganda atau tunggal.

Misalkan jika Anda ingin mencari semua file di direktori /Desktop yang menyertakan .txt di bagian terakhirnya. Kemudian dapat dilakukan dengan perintah Linux find directory berikut:

find Desktop -name '*.txt'

Sekarang jika Anda ingin mencari file yang menyertakan tiga karakter dalam namanya, maka Anda dapat menggunakan "?" wildcard diapit tanda kutip.

find Desktop -name '???'

Menentukan pencarian untuk file atau direktori

Saat menggunakan Linux untuk menemukan perintah direktori, Anda juga dapat menentukan jenis pencarian Anda. Anda dapat menggunakan sakelar "-type" untuk menentukan apakah Anda hanya mencari file atau direktori. Ada tiga parameter sakelar "-type" secara total:

  • f - file
  • d - direktori
  • l - tautan simbolis

Jika Anda ingin menemukan semua direktori yang ada di jalur /usr maka Anda dapat menggunakan:

find /usr -type d

Ada cara lain untuk menggunakan sakelar dengan menggabungkannya. Misalnya, untuk mencari ".txt" dengan tombol -name dan pada saat yang sama menentukan jenis file dengan tombol "-type":

find /usr -type f -name '*.txt'

Sama seperti contoh di atas, Anda juga dapat menemukan direktori dengan menggunakan parameter "d" di jalur /usr. Untuk menemukan direktori bernama "cherrytree":

find /usr -type d -name 'cherrytree'

Tombol kosong untuk menemukan file kosong

Anda dapat menggunakan sakelar "-kosong" di dalam Linux di dalam perintah direktori find Linux. Switch ini digunakan untuk menemukan file kosong atau direktori kosong apa pun yang ada di jalur yang Anda tentukan. Untuk menemukan file kosong di direktori /usr, Anda dapat menerapkan perintah berikut dengan sakelar "-type":

find /usr -type d -empty

Meniadakan kecocokan dalam perintah find

Jika Anda ingin mengecualikan sesuatu dari pencarian, Anda dapat menggunakan perintah find untuk meniadakan kondisi tersebut.

Misalkan Anda ingin mencari file tanpa ekstensi ".Py" di direktori /usr. Anda dapat menyertakan tanda seru (!) dengan tombol "-name", seperti yang ditunjukkan di bawah ini:

find /usr -type f ! -name '*.py'

Tanda seru juga dapat digunakan untuk menentang sakelar lainnya. Misalnya, dalam kasus sakelar "-kosong", Anda dapat menggunakan "!" untuk mencari direktori yang tidak kosong sebagai pengganti direktori kosong.

find /usr -type f ! -empty

Menemukan file berdasarkan kepemilikannya

Ada opsi untuk menemukan file berdasarkan kepemilikan pengguna. Anda dapat menggunakan tombol "-user" untuk mencari file yang terkait dengan pengguna tertentu. Jika Anda ingin mencari file yang terkait dengan pengguna bernama "root" maka Anda dapat menerapkan perintah berikut untuk mendapatkan daftar semua file mereka.

find / -type f -user root

Alih-alih nama pengguna, Anda juga dapat menggunakan ID pengguna untuk memeriksa semua file milik pengguna tersebut. Jika Anda tidak mengetahui ID pengguna Anda, maka Anda dapat menemukannya dengan menggunakan perintah berikut.

id -u <username>

Anda juga dapat mencari berdasarkan grup dengan bantuan nama grup atau ID grup. Untuk menemukan ID grup Anda, Anda dapat menggunakan perintah berikut.

id -g <username>

Mencari file berdasarkan ukurannya

Perintah direktori find Linux juga memungkinkan Anda untuk mencari file berdasarkan ukurannya. Untuk tujuan ini sakelar "-size" digunakan, dan ini hanya berlaku pada file, bukan pada direktori.

Anda dapat menentukan ukuran file dengan meletakkan angka yang diikuti dengan alfabet. Huruf-huruf ini digunakan dengan tombol "-size",

  • c- byte
  • k - kilobyte
  • m - megabita
  • g - gigabyte

Anda juga dapat menerapkan kondisi yang kurang dari atau lebih besar dengan bantuan tanda "+" dan "-".

Berikut adalah contoh untuk menemukan semua file sistem dengan ukuran 20KB:

find / -size 20k

Jika Anda ingin mencari file yang lebih besar dari 1 GB, Anda dapat menggunakan:

find / -size +1G

Jika Anda menginginkan file dengan ukuran lebih kecil dari 20MB, maka Anda dapat menggunakan pernyataan berikut:

find / -size -20M

Mengambil tindakan dengan perintah find directory

Perintah yang kami gunakan sampai sekarang hanya untuk menampilkan hasil di terminal, tetapi ada beberapa tindakan yang dapat kami lakukan dengan bantuan perintah find. Kami juga dapat melakukan tindakan yang diperlukan seperti menyalin atau menghapus file.

Untuk menghapus file

Anda dapat dengan mudah menghapus file atau direktori apa pun dengan sederhana menggunakan "-delete" dengan perintah find Anda. Misalkan Anda ingin menghapus semua file kosong yang ada di direktori /Desktop maka Anda dapat menggunakan perintah berikut:

find Desktop -type f -empty -delete

Eksekusi perintah

Sakelar "-exec" digunakan untuk menjalankan perintah khusus. Anda dapat melakukan banyak hal dengan bantuan tombol "-exec".

Untuk menyalin semua file sekaligus, Anda dapat menggunakan:

find ~ -type f -name '*.mp3' -exec cp {} ';'

Pada perintah di atas, kita menggunakan ";" untuk menunjukkan akhir dari perintah yang diapit tanda kutip. "{}" (tanda kurung) yang Anda lihat digunakan untuk mendefinisikan lokasi.

Sekarang ketika ada file yang cocok terdeteksi sesuai dengan yang ditentukan, perintah cp diaktifkan untuk memindahkan file dari lokasi.

Kesimpulan

Anda dapat melakukan lebih banyak dengan bantuan perintah find. Ini berguna bagi mereka yang terbiasa dengan Linux CLI (antarmuka baris perintah). Perintah find hadir dengan banyak kemungkinan yang akan membantu Anda melakukan berbagai tindakan dan melakukan lebih banyak lagi. Ada juga tutorial tentang perintah memindahkan dan menyalin Linux, lihatlah.


Linux
  1. Kuasai perintah Linux ls

  2. Temukan Waktu Eksekusi Perintah Atau Proses Di Linux

  3. Cara Menggunakan Perintah find Linux untuk Menemukan File

  1. Perintah cari di Linux

  2. temukan Contoh Perintah di Linux

  3. Perintah Pindah Direktori Linux

  1. Perintah Linux pwd

  2. Cara Menggunakan Perintah cd Linux untuk Mengubah Direktori

  3. Panduan untuk Perintah "Temukan" Linux