LinuxTips/Trik

Cara Mencari File Secara Efektif di Terminal Linux

Pernahkah Anda merasa frustasi mencari file secara manual di komputer Anda? Jika Anda seorang pengembang atau insinyur DevOps yang bekerja pada server Linux tanpa GUI, akan sulit menavigasi bolak-balik untuk menemukan file.

Banyak orang tidak menyadari kekuatan terminal Linux. Linux memiliki baris perintah yang sangat kuat yang memungkinkan Anda mencari file dan direktori dalam sepersekian detik.

Baik Anda seorang pemula atau ahli, dan jika Anda ingin meningkatkan keterampilan manajemen file Anda ke tingkat berikutnya, Anda telah tiba di tempat yang tepat. Artikel ini akan membantu Anda memahami dasar-dasar perintah find yang paling umum digunakan di Linux.

Apa findPerintah di Linux?

Perintah ini findmemungkinkan Anda untuk mencari file dan direktori di komputer Anda. Ini menambah fleksibilitas untuk mencari file di direktori tertentu atau secara rekursif melalui semua subdirektori.

Mari kita jelajahi kekuatan findperintah

Cara Mencari File Berdasarkan Nama

Katakanlah Anda menyimpan file bernama hello_world.htmlsuatu tempat dan Anda bahkan tidak ingat nama direktorinya. Namun atasan Anda meminta Anda untuk segera mengirimkan file tersebut kepada mereka.

Biasanya, jika Anda lupa di mana Anda menyimpan file, Anda akan mulai dengan menelusuri folder demi folder dan memeriksa apakah file tersebut ada.

Ini adalah saat findperintah melakukan pekerjaan dengan baik. Daripada mencari file secara manual di komputer Anda, Anda dapat menggunakan findperintah untuk mengotomatiskan prosesnya.

Dengan meneruskan nama file menggunakan -nameflag, findperintah mencari dan mengembalikan lokasi file.

find -name <file_name>
findsintaks perintah untuk mencari file berdasarkan nama
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk mencari file berdasarkan nama

Tapi ingat, -namebendera melakukan pencarian peka huruf besar-kecil. Jika Anda ingin melakukan penelusuran yang tidak peka huruf besar-kecil, Anda dapat menggunakan tandanya -iname.

find -iname <file_name>
findsintaks perintah untuk melakukan pencarian peka huruf besar-kecil
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk melakukan pencarian peka huruf besar-kecil

Anda juga dapat menggunakan findperintah tersebut sebagai alternatif dari lsperintah di beberapa tempat. Anggaplah Anda perlu menemukan semua file yang diakhiri dengan ekstensi .txt. Anda dapat melakukannya dengan findperintah menggunakan pola regex ( *.txt).

find /path/to/search -name "*.txt"
findperintah untuk mencari file yang cocok dengan suatu pola
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal menampilkan pencarian file dengan mencocokkan suatu pola

Perintah ini akan mencantumkan semua .txtfile di direktori Anda saat ini dan subdirektorinya.

Untuk mencari .txtfile pada direktori dan subdirektori tertentu, Anda dapat mengganti /path/to/searchdengan path direktori Anda.

Cara Menemukan Direktori di Linux

Pencarian direktori dapat dilakukan dengan meneruskan dke -typeparameter dalam findperintah.

find /path/to/search -type d
findsintaks perintah untuk menemukan direktori
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk mencari direktori menggunakan findperintah

Pada tangkapan layar di atas, kami menemukan direktori yang diberi nama zipdari direktori kami saat ini.

Demikian pula -typeopsi menerima opsi parameter lain untuk menyederhanakan proses pencarian kami.

  • fmenemukan daftar file biasa
  • bmenemukan daftar perangkat blok
  • cmenemukan daftar perangkat karakter
  • lmenemukan daftar tautan simbolis
  • smenemukan daftar soket
  • pmenemukan pipa bernama

Cara Mencari File Berdasarkan Ukuran di Linux

Menambahkan -sizeopsi bersama dengan findperintah membantu Anda menemukan file berdasarkan ukuran. Tambahkan a +atau -ke ukuran untuk masing-masing mewakili lebih besar dan lebih kecil dari.

find /path/to/search -size <size_of_the_file>
findsintaks perintah untuk mencari file berdasarkan ukuran
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk mencari file berdasarkan ukuran

Pada tangkapan layar di atas, kami menemukan semua file yang berukuran lebih besar dari 1 GB.

Anda juga dapat mencari semua file yang termasuk dalam rentang ukuran tertentu.

Misalnya, jika Anda ingin mencari semua file yang berukuran di atas 50 MB dan di bawah 100 MB, Anda dapat menjalankan perintah berikut:

find /path/to/search -size +50M -size -100M
findsintaks perintah untuk mencari file dalam berbagai ukuran
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk mencari file dalam suatu jangkauan

Anda dapat menentukan ukuran dalam notasi pilihan Anda. Beberapa notasi yang tersedia adalah:

  1. K mewakili KB
  2. M mewakili MB
  3. G mewakili GB
  4. b mewakili byte
  5. c mewakili blok

Cara Mencari File Berdasarkan Waktu yang Dimodifikasi

Setiap file memiliki waktu pembuatan dan pembaruan terakhir yang terkait dengannya. Anggaplah Anda memiliki ribuan file di direktori Anda. Anda mengedit file dalam beberapa hari terakhir dan lupa namanya. Anda yakin bahwa Anda hanya mengedit beberapa file setelah itu.

Dalam kasus seperti itu, Anda dapat menemukan semua file yang telah diubah dalam 7 hari terakhir. Ini membatasi pencarian Anda dari 1000+ file ke jumlah yang lebih mudah dikelola. Anda akan dapat menemukan file yang Anda edit dalam hitungan detik setelah menjalankan perintah.

Hal ini dimungkinkan dengan meneruskan -mtimeparameter dengan findperintah.

find /path/to/search -mtime <-number_of_days_ago>
findsintaks perintah untuk mencari file yang diubah dalam hari-hari tertentu
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk mencari file berdasarkan waktu yang diubah

Mari kita asumsikan skenario lain, dengan tanggal hari ini adalah 10 Februari 2023. Anda memodifikasi file sebelum 3 Februari 2023. Setelah 3 Februari 2023, Anda memodifikasi banyak file. Anda harus mencari file yang Anda modifikasi sebelum 3 Februari 2023. Jadi pada dasarnya Anda memerlukan file yang telah dimodifikasi sebelum 3 Februari 2023.

Skenario yang aneh, bukan?

Namun, Anda juga dapat menjalankan kueri ini menggunakan findperintah. Anda dapat melakukannya dengan menukar tanda negatif (-) dengan tanda positif (+).

Inilah perintah yang dimodifikasi untuk Anda:

find /path/to/search -mtime +7
findsintaks perintah untuk mencari file yang diubah sebelum hari tertentu

Cara Menjalankan Perintah pada File yang Difilter dari findPerintah

Pertanyaan ini mungkin membingungkan Anda. Sebelum membeberkan jawabannya, mari kita pahami pertanyaannya secara jelas dengan skenario nyata.

Anggaplah Anda memiliki 1000 file dalam satu direktori, dan menjalankan findperintah akan menghasilkan 20 file yang cocok. Anda ingin memindahkan 20 file ini ke direktori lain. Bagaimana Anda bisa mencapainya?

Sederhananya, kita harus menjalankan perintah pada setiap file yang difilter.

Anda dapat melakukan ini dengan meneruskan -execopsi dengan findperintah.

Opsi ini -execmenjalankan perintah pada setiap file yang ditemukan dalam pencarian. Opsi ini -execdiikuti dengan perintah dan argumennya, dengan {}simbol yang mewakili jalur file yang sedang diproses.

Untuk mewakili akhir perintah -exec, kita harus menambahkan \;(garis miring ke belakang dan titik koma).

Berikut sintaksnya:

find /path/to/search -name  -exec  {}  \;
findsintaks perintah untuk menjalankan operasi pada file yang difilter

Mari kita coba memindahkan file yang difilter dari 5minslearndirektori ke zipdirektori.

Inilah perintahnya:

find ./5minslearn -name "*.zip" -exec mv {} ./5minslearn/zip \;
Cara Mencari File Secara Efektif di Terminal Linux

Perintah ini mencari semua file yang diakhiri dengan a .zipdi ./5minslearndirektori dan kemudian memindahkan setiap file ke ./5minslearn/zipdirektori.

Opsi ini -execmemungkinkan Anda melakukan berbagai operasi pada file yang ditemukan. Anda dapat mengganti perintah pindah dari contoh di atas dengan menyalin, menghapus, atau bahkan mengubah perintah izin file.

Cara Menjalankan Perintah pada File yang Difilter dengan Konfirmasi

Kebanyakan orang akan memilih untuk menggunakan ini jika mereka tidak yakin apakah akan menerapkan operasi pada setiap file.

Opsinya -okmirip dengan -execopsi kecuali opsi ini akan meminta konfirmasi sebelum menjalankan operasi pada setiap file. Perintah ini sangat membantu untuk meninjau file yang akan terpengaruh sebelum menjalankan operasi tertentu. Anda juga memiliki opsi untuk menolak jika Anda tidak yakin atau tidak ingin menerapkan perintah tersebut.

Misalnya kali ini mari kita coba memindahkan .txtfile ke direktori lain.

find /path/to/search -name "*.txt" -ok mv {} /path/to/destination \;
findsintaks perintah untuk mengonfirmasi sebelum menjalankan operasi pada file yang difilter
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk memindahkan file yang difilter dengan konfirmasi

Perintah di atas mencari semua file dengan .txtekstensi di ./5minslearndirektori dan kemudian meminta pengguna untuk mengonfirmasi sebelum memindahkan setiap file ke ./5minslearn/text_filesdirektori.

Untuk menyetujui operasi, masuk yesdan nountuk menolak operasi dan lewati ke file berikutnya.

Opsi ini -ok berguna ketika Anda ingin berhati-hati dengan file yang Anda modifikasi, karena memungkinkan Anda memeriksa setiap file dan lokasinya sebelum menjalankan perintah yang ditentukan.

Cara Menemukan File dengan Informasi Rinci

Opsi -lspada perintah find digunakan untuk menampilkan informasi tentang file yang ditemukan dalam pencarian, dalam format perintah ls. Opsi ini memberikan informasi rinci tentang file, seperti izin, pemilik, ukuran, dan waktu modifikasi terakhir.

find /path/to/search -name "*.<file-extension>" -ls
findsintaks perintah untuk membuat daftar file dalam lsformat perintah
Cara Mencari File Secara Efektif di Terminal Linux
Perintah terminal untuk membuat daftar file dalam lsformat perintah

Cara Menemukan dan Menghapus File

Pernahkah Anda perlu mencari file dan menghapusnya dari komputer Anda? Opsi -deletedalam perintah find melakukan ini untuk Anda. Ini memungkinkan Anda untuk menghapus file yang sesuai dengan kriteria yang ditentukan.

find . -name "*.<extension>" -delete
Cara Mencari File Secara Efektif di Terminal Linux

Pada contoh di atas, Anda dapat melihat bahwa perintah find menghapus file .htmlberekstensi

Catatan: Operasi ini tidak dapat diubah. Pastikan 100% saat Anda menjalankan operasi penghapusan.

Saya menyarankan untuk menjalankan findperintah tanpa -deletetanda terlebih dahulu dan memastikan bahwa hanya file yang perlu dihapus yang ditampilkan. Setelah yakin, Anda dapat menjalankan perintah yang sama dengan menambahkan -deletetanda.

Kesimpulan

Pada artikel ini, Anda mempelajari cara mencari file secara efektif menggunakan terminal Linux Anda.

Ini adalah opsi yang sangat mendasar dalam perintah find yang menurut saya harus diketahui oleh setiap pengembang. Saya percaya menguasai dasar-dasarnya adalah langkah pertama untuk menjadi lebih maju dengan Linux. Saya telah membahas dasar-dasar di semua blog saya untuk membantu Anda menciptakan dasar yang kuat.

Related Articles

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Back to top button