find.-name"[A-Z]*&"/> find.-name"[A-Z]*&">
Rumah >Tutorial sistem >LINUX >Pilihan dan parameter tersedia untuk arahan cari dalam Linux
Gunakan pilihan nama:
Pilihan nama fail ialah pilihan yang paling biasa digunakan untuk arahan cari Pilihan ini sama ada digunakan secara bersendirian atau bersama-sama dengan pilihan lain. Anda boleh menggunakan corak nama fail untuk memadankan fail, ingat untuk menyertakan corak nama fail dalam petikan. Tidak kira apa laluan semasa, jika anda ingin mencari fail dengan nama fail yang sepadan *.log masuk direktori akar anda $HOME, gunakan ~ sebagai parameter 'pathname' dan tilde ~ mewakili direktori rumah pengguna semasa.
Cari fail .log bagi direktori rumah pengguna yang sedang dilog masuk:
> find ~ -name "*.log"
Cari fail bermula dengan huruf besar dalam direktori semasa:
> find . -name "[A-Z]*"
Cari fail bermula dengan sys dalam direktori /etc:
> find /etc -name "sys*"
Minta gambar dalam direktori semasa yang bermula dengan huruf besar + 3 digit .png
> find . -name "[A-Z]*[0-9][0-9][0-9].png"
Gunakan pilihan perm:
Gunakan pilihan -perm untuk mencari fail mengikut mod kebenaran fail. Sebaik-baiknya gunakan tatatanda oktal untuk kebenaran. Jika anda ingin mencari fail dengan kebenaran fail bit 755 dalam direktori semasa, iaitu pemilik fail boleh membaca, menulis dan melaksanakan, dan pengguna lain boleh membaca dan melaksanakan, anda boleh menggunakan
> find . -perm 755
find -perm -mode
, menunjukkan bahawa 1 ditukar kepada binari dalam mod mesti sepadan dengan bit kebenaran fail Contohnya, jika mod=644, ia ditukar kepada binari sebagai 110 100 100, dan bit kebenaran fail yang dicari juga boleh ditukar menjadi. nombor binari Dua Bit yang 1 mesti sepadan dengan tepat, manakala 0 tidak penting. Sebagai contoh, jika kebenaran fail yang dicari adalah 111 111 111 ditukar kepada nombor binari, maka ini akan dipadankan, tetapi jika ia adalah 100 100 100, maka ia tidak akan dipadankan. Jadi fungsi '-' ini bermuara kepada memadankan fail dengan kebenaran yang lebih mencukupi daripada mod (saya tidak dapat mencari sebarang perkataan untuk menerangkannya)
Abaikan direktori:
Jika anda ingin mengabaikan direktori tertentu semasa mencari fail kerana anda tahu bahawa fail yang anda cari tidak wujud dalam direktori tersebut, anda boleh menggunakan pilihan -prune untuk menunjukkan direktori yang perlu diabaikan. Berhati-hati apabila menggunakan pilihan -prune, kerana jika anda juga menggunakan pilihan -depth, pilihan -prune akan diabaikan oleh arahan find. Jika anda ingin mencari fail dalam direktori semasa tetapi tidak dalam direktori ./bin, anda boleh gunakan
> find . -path "./bin" -prune -o -print
Elakkan berbilang folder:
> find . \( -path "./bin" -o -path "./doc" \) -prune -o -print
Kurungan menunjukkan gabungan ungkapan. Menunjukkan rujukan, yang mengarahkan cangkerang untuk tidak membuat tafsiran khas bagi aksara berikut, tetapi meninggalkan perintah find
untuk mentafsir maksudnya.
Untuk mencari fail tertentu, -nama dan pilihan lain ditambah selepas -o:
> find . \( -path "./bin" -o -path "./doc" \) -prune -o-name "*.txt" -print
<span style="background-color: initial;">user nouser</span>
和 <span style="background-color: initial;">group nogroup</span>
Cari fail yang pemiliknya root
dalam direktori semasa
> find . -user root
Cari fail yang dipadam kepunyaan direktori semasa:
> find . -nouser
Cari fail yang kumpulannya root
dalam direktori semasa:
> find . -group root
Cari fail yang dipadamkan dalam kumpulan yang menjadi milik direktori semasa:
> find . -nogroup
Cari fail mengikut masa
Cari fail yang ditukar dalam masa 7 hari:
> find . -mtime -7
Cari fail yang ditukar sebelum 7 hari:
> find . mtime +7
Cari fail yang lebih baharu atau lebih lama daripada fail tertentu
Cari fail dengan masa perubahan lebih baharu daripada fail a.log tetapi lebih lama daripada fail b.log:
> find . -newer a.log ! -newer b.log
Cari fail dengan masa perubahan lebih baharu daripada fail a.log:
> find . -newer a.log
pilihan jenis
Cari semua direktori dalam direktori /etc:
> find /etc -type d
Cari semua fail pautan simbolik dalam direktori /etc:
> find /etc -type l
parameter saiz
Anda boleh mencari fail mengikut panjangnya Panjang fail yang dirujuk di sini boleh diukur dalam blok atau bait. Bentuk ungkapan panjang fail yang diukur dalam bait ialah N c panjang fail yang diukur dalam blok hanya boleh dinyatakan dengan nombor. Apabila mencari fail mengikut panjang fail, panjang fail ini dinyatakan dalam bait biasanya digunakan untuk melihat saiz sistem fail, kerana lebih mudah untuk menukar menggunakan blok untuk diukur.
Cari fail dengan panjang fail lebih daripada 100M bait dalam direktori semasa:
> find . -size +100M
Gunakan pilihan kedalaman:
在使用find命令时,可能希望先匹配所有的文件,再在子目录中查找。使用depth选项就可以使find命令这样做。这样做的一个原因就是,当在使用find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份子目录中的文件。
先输出子内容,再输出上层目录内容,直到最顶层:
> find test -depth! -empty test/test1/test2/test3 test/test1/test2 test/test1 test
先输出顶层目录,再输出下面的各层子目录内容,直到最低层:
> find test ! -empty test test/test1 test/test1/test2 test/test1/test2/test3
mount选项:
在当前的文件系统中查找文件(不进入其他文件系统),可以使用find命令的mount选项。
从当前目录开始查找位于本文件系统中文件名以.txt结尾的文件:
> find . -mount -name "*.txt"-print
Atas ialah kandungan terperinci Pilihan dan parameter tersedia untuk arahan cari dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!