Banyak programmer Linux menggunakan find perintah setiap hari dalam karir mereka. Tapi find memberikan satu set entri sistem file yang terbatas, dan jika Anda harus melakukan serangkaian besar find operasi, itu bahkan tidak terlalu cepat. Jadi sebagai gantinya, saya lebih suka menggunakan fd Rust perintah karena menyediakan default yang masuk akal yang berfungsi untuk sebagian besar kasus penggunaan.
Seperti yang dikatakan README, "fd adalah program untuk menemukan entri di sistem file Anda. Ini adalah alternatif yang sederhana, cepat, dan mudah digunakan untuk find ." Ini memiliki fitur traversal direktori paralel, sehingga dapat mencari beberapa direktori sekaligus. Mendukung ekspresi reguler (regex) dan pola berbasis glob.
Instal fd
Di Linux, Anda dapat menginstal fd dari repositori perangkat lunak Anda (daftar paket yang tersedia dapat ditemukan di halaman fd di Repology.) Misalnya, di Fedora:
$ sudo dnf install fd-find Di macOS, gunakan MacPorts atau Homebrew.
Sebagai alternatif, Anda dapat menggunakan pengelola paket Kargo Rust:
$ cargo install fd-find Gunakan fd
Untuk melakukan pencarian sederhana, jalankan fd setelah argumen apa pun, seperti:
$ fd sh
registry/src/github.com-1ecc6299db9ec823/cc-1.0.67/src/bin/gcc-shim.rs
registry/src/github.com-1ecc6299db9ec823/exa -0.10.1/completions/completions.bash
registry/src/github.com-1ecc6299db9ec823/exa-0.10.1/completions/completions.fish
registry/src/github.com-1ecc6299db9ec823/exa -0.10.1/completions/completions.zsh
registry/src/github.com-1ecc6299db9ec823/exa-0.10.1/xtests/run.sh
registry/src/github.com-1ecc6299db9ec823/git2 -0.13.18/src/stash.rs
registry/src/github.com-1ecc6299db9ec823/libc-0.2.94/src/unix/solarish
registry/src/github.com-1ecc6299db9ec823/libgit2 -sys-0.12.19+1.1.0/libgit2/cmake/SelectHashes.cmake
registry/src/github.com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0/libgit2/include/git2/ stash.h
registry/src/github.com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0/libgit2/include/git2/sys/hashsig.h
registry/src/github. com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0/libgit2/script/backport.sh
registry/src/githu b.com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0/libgit2/script/leaks.sh
registry/src/github.com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0 /libgit2/script/valgrind.sh
registry/src/github.com-1ecc6299db9ec823/libgit2-sys-0.12.19+1.1.0/libgit2/src/config_snapshot.c
[...]
Jika Anda ingin mencari direktori tertentu, berikan jalur direktori sebagai argumen kedua ke fd , seperti:
$ fd passwd /etc
/etc/pam.d/passwd
/etc/passwd
/etc/passwd-
/etc/security/opasswd
Untuk mencari ekstensi file tertentu, gunakan -e sebagai pilihan. Misalnya:
$ fd . '/home/ssur/exa' -e md
/home/ssur/exa/README.md
/home/ssur/exa/devtools/README.md
/home/ssur/ exa/man/exa.1.md
/home/ssur/exa/man/exa_colors.5.md
/home/ssur/exa/xtests/README.md
$Anda juga dapat menjalankan perintah dengan memberikan
-xatau-X.
-x/--execoption menjalankan perintah eksternal untuk setiap hasil pencarian (secara paralel).-X/--exec-batchoption meluncurkan perintah eksternal sekali dengan semua hasil pencarian sebagai argumen.
Misalnya, untuk menemukan semua arsip ZIP secara rekursif dan membongkarnya:
$ fd -e zip -x unzip
Atau, untuk membuat daftar semua file di bawah direktori tertentu yang diubah dalam n . terakhir jumlah hari, gunakan --changed-within pilihan:
$ fd . '/home/ssur/Work/' --changed-in 10d
/home/ssur/Work/wildfly/connector/src/main/Java/org/jboss/as/connector/subsystems/data_sources/JdbcDriverAdd. java
/home/ssur/Work/wildfly/connector/src/main/java/org/jboss/as/connector/subsystems/data_sources/JdbcExample.java
[...]
Dan untuk mencari semua file yang diubah sebelum jumlah hari tertentu, gunakan --changed-before n pilihan:
$ fd . '/home/ssur/Work/' --changed-before 365d
Lebih banyak sumber daya Linux
- Lembar contekan perintah Linux
- Lembar contekan perintah Linux tingkat lanjut
- Kursus online gratis:Ikhtisar Teknis RHEL
- Lembar contekan jaringan Linux
- Lembar contekan SELinux
- Lembar contekan perintah umum Linux
- Apa itu container Linux?
- Artikel Linux terbaru kami
Di sini, . bertindak sebagai entri wildcard untuk menginstruksikan fd untuk mengembalikan semua file.
Untuk mempelajari lebih lanjut fungsi fd , lihat dokumentasinya di GitHub.
Kesimpulan
Satu hal yang sangat saya sukai dari fd adalah bahwa pola pencarian peka huruf besar/kecil secara default, yang membuatnya lebih mudah untuk menemukan sesuatu bahkan ketika Anda memiliki pengetahuan yang tidak tepat tentang apa yang Anda cari. Lebih baik lagi, secara otomatis beralih ke case-sensitive jika polanya berisi karakter huruf besar.
Manfaat lainnya adalah ia menggunakan kode warna untuk menyorot berbagai jenis file.
Jika Anda sudah menggunakan alat Rust yang luar biasa ini, beri tahu kami pendapat Anda di komentar.