10 Contoh Praktikal Menggunakan Wildcards Untuk Memadankan Nama File di Linux

10 Contoh Praktikal Menggunakan Wildcards Untuk Memadankan Nama File di Linux

Kad liar (juga disebut sebagai aksara meta) adalah simbol atau watak khas yang mewakili watak lain. Anda boleh menggunakannya dengan arahan seperti arahan LS atau Perintah RM Untuk menyenaraikan atau mengeluarkan fail yang sepadan dengan kriteria yang diberikan, secara penerimaan.

Baca Juga: 10 Contoh Praktikal Berguna pada Pengendali Berantai di Linux

Kad liar ini ditafsirkan oleh shell dan hasilnya dikembalikan kepada arahan yang anda jalankan. Terdapat tiga kad liar utama di Linux:

  • Asterisk (*) - Memadankan satu atau lebih kejadian mana -mana watak, termasuk tiada watak.
  • Tanda soal (?) - mewakili atau memadankan satu kejadian mana -mana watak.
  • Watak kurungan ([]) - Memadankan sebarang kejadian yang tertutup dalam kurungan persegi. Adalah mungkin untuk menggunakan pelbagai jenis aksara (aksara alfanumerik): nombor, huruf, watak khas lain dll.

Anda perlu dengan teliti memilih kad liar yang hendak digunakan untuk memadankan nama fail yang betul: ia juga mungkin untuk menggabungkan semuanya dalam satu operasi seperti yang dijelaskan dalam contoh di bawah.

Cara Memadankan Nama Fail Menggunakan Wildcards Di Linux

Untuk tujuan artikel ini, kami akan menggunakan fail berikut untuk menunjukkan setiap contoh.

ciptaanbackup.Senarai SH.sh lspace.pembesar suara.sh listopen.sh hilang.sh menamakan semula fail.sh topprocs.sh 

1. Perintah ini sepadan dengan semua fail dengan nama yang bermula dengan L (yang merupakan awalan) dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ ls -l l* 
Senaraikan fail dengan watak

2. Contoh ini menunjukkan penggunaan lain * Untuk menyalin semua nama fail yang diawali dengan Pengguna-0 dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ mkdir -p pengguna-info $ ls pengguna-0* $ mv -v pengguna-0* pengguna-info/ # pilihan -v Bendera membolehkan output verbose 
Senaraikan dan salin semua fail

3. Perintah berikut sepadan dengan semua fail dengan nama yang bermula dengan L diikuti oleh mana -mana watak tunggal dan berakhir dengan st.sh (yang merupakan akhiran).

$ ls l?st.sh 
Padankan fail dengan nama watak

4. Perintah di bawah sepadan dengan semua fail dengan nama bermula dengan L diikuti oleh mana -mana watak dalam kurungan persegi tetapi berakhir dengan st.sh.

$ ls l [abdcio] st.sh 
Memadankan fail dengan nama

Cara menggabungkan kad liar untuk memadankan nama fail di linux

Anda boleh menggabungkan kad liar untuk membina kriteria yang sepadan dengan nama fail kompleks seperti yang diterangkan dalam contoh berikut.

5. Perintah ini akan sepadan dengan semua nama fail yang diawali dengan mana -mana dua aksara diikuti oleh st tetapi berakhir dengan satu atau lebih berlakunya watak.

$ ls $ ls ??st* 
Padankan nama fail dengan awalan

6. Contoh ini sepadan dengan nama fail bermula dengan mana -mana watak ini [Clst] dan berakhir dengan satu atau lebih berlakunya watak.

$ ls $ ls [clst]* 
Padankan fail dengan watak

7. Dalam contoh ini, hanya nama fail bermula dengan mana -mana watak ini [Clst] diikuti oleh salah satu daripada ini [io] dan kemudian mana -mana watak tunggal, diikuti oleh a t dan akhirnya, satu atau lebih kejadian mana -mana watak akan disenaraikan.

$ ls $ ls [clst] [io]?t* 
Senaraikan fail dengan pelbagai aksara

8. Di sini, nama fail yang diawali dengan satu atau lebih kejadian mana -mana watak, diikuti dengan huruf tar dan berakhir dengan satu atau lebih kejadian mana -mana watak akan dikeluarkan.

$ ls $ rm * tar * $ ls 
Keluarkan fail dengan huruf watak

Cara memadankan aksara yang ditetapkan di linux

9. Sekarang mari kita lihat cara menentukan satu set watak. Pertimbangkan nama fail di bawah yang mengandungi maklumat pengguna sistem.

$ ls pengguna-111.Senaraikan pengguna-1AA.Senaraikan Pengguna-22A.Senaraikan Pengguna-2AB.TXT USERS-2BA.Pengguna TXT-111.TXT Pengguna-1AA.TXT USERS-22A.TXT USERS-2AB.TXT USERS-2BA.TXT USERS-11A.TXT USERS-1AB.Senaraikan Pengguna-2AA.TXT USERS-2BA.Senaraikan pengguna-12A.TXT USERS-1AB.TXT USERS-2AB.Senaraikan Pengguna-2BA.senarai 

Perintah ini akan sepadan dengan semua fail yang namanya bermula dengan Pengguna-I, diikuti dengan nombor, huruf atau nombor kes yang lebih rendah, kemudian nombor dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ ls pengguna- [0-9] [A-Z0-9] [0-9]* 

Perintah seterusnya sepadan dengan nama fail bermula dengan Pengguna-I, diikuti dengan nombor, huruf atau nombor kes yang lebih rendah atau lebih tinggi, maka nombor dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ ls pengguna- [0-9] [a-za-z0-9] [0-9]* 

Perintah yang berikut akan sepadan dengan semua nama fail yang bermula dengan Pengguna-I, diikuti dengan nombor, huruf atau nombor kes yang lebih rendah atau lebih tinggi, maka huruf bawah atau atas kes dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ ls pengguna- [0-9] [a-z0-9] [a-za-z]* 
Memadankan watak dalam nama fail

Cara menafikan satu set aksara di Linux

10. Anda juga boleh menafikan satu set aksara menggunakan ! simbol. Perintah berikut menyenaraikan semua nama fail bermula dengan Pengguna-I, diikuti dengan nombor, mana -mana fail penamaan fail yang sah selain daripada nombor, kemudian huruf bawah atau huruf besar dan berakhir dengan satu atau lebih kejadian mana -mana watak.

$ ls pengguna- [0-9] [!0-9] [a-za-z]* 

Itu sahaja buat masa ini! Sekiranya anda telah mencuba contoh -contoh di atas, anda kini harus mempunyai pemahaman yang baik tentang bagaimana kad liar berfungsi untuk memadankan nama fail di Linux.

Anda juga mungkin ingin membaca artikel berikut yang menunjukkan contoh menggunakan Wildcards di Linux:

  1. Cara mengekstrak fail tar ke direktori tertentu atau berbeza di linux
  2. 3 cara untuk memadam semua fail dalam direktori kecuali satu atau beberapa fail dengan sambungan
  3. 10 Petua Berguna untuk Menulis Skrip Bash Berkesan di Linux
  4. Cara Menggunakan Awk dan Ekspresi Biasa Untuk Menapis Teks atau Rentetan Dalam Fail

Sekiranya anda mempunyai apa -apa perkara untuk dikongsi atau soalan untuk bertanya, gunakan borang komen di bawah.