EN: Read in English
Dunia L1: Rumah Kedai
Wildcard dan tab completion
Anda akan belajar: padankan banyak fail dengan satu corak, dan biar Tab habiskan nama untuk anda.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Linux (Debian 13) pada 1 Nov 2026
Masalahnya
Peti masuk ada 3 gambar makanan hari ini. Minggu depan ada 300. Semuanya patut masuk bilik photos. Mahu taip 300 nama?
Pilih satu jawapan.
Tengok
Anda you di /home/you/kedai/inbox. 7 benda di sini. Servis: cron berjalan, ssh berjalan, nginx berjalan.
you@kedai:~/kedai/inbox$Folder ~/kedai/inbox
- menu1.txt (fail)
-rw-r--r-- - menu10.txt (fail)
-rw-r--r-- - menu2.txt (fail)
-rw-r--r-- - nasi.jpg (fail)
-rw-r--r-- - notes.md (fail)
-rw-r--r-- - roti.jpg (fail)
-rw-r--r-- - teh.jpg (fail)
-rw-r--r--
+ 1 tersembunyi (ls -a)
Servis
cronberjalanmula semasa bootsshberjalanmula semasa bootnginxberjalanmula semasa boot
* ialah wildcard (* ?): Corak yang shell tukar kepada nama yang padan: * apa saja huruf, ? satu huruf. (kad liar): ia padankan apa saja huruf. Shell tukar *.jpg kepada setiap nama yang padan sebelum arahan berjalan. echo tunjuk pertukaran itu.
Teka
? padankan tepat satu aksara. Apa yang echo menu?.txt cetak?
Pilih satu jawapan.
Cuba
Buat bilik photos. Kemudian alih setiap gambar ke dalamnya dengan satu corak: mv *.jpg photos/.
Anda you di /home/you/kedai/inbox. 7 benda di sini. Servis: cron berjalan, ssh berjalan, nginx berjalan.
you@kedai:~/kedai/inbox$Folder ~/kedai/inbox
- menu1.txt (fail)
-rw-r--r-- - menu10.txt (fail)
-rw-r--r-- - menu2.txt (fail)
-rw-r--r-- - nasi.jpg (fail)
-rw-r--r-- - notes.md (fail)
-rw-r--r-- - roti.jpg (fail)
-rw-r--r-- - teh.jpg (fail)
-rw-r--r--
+ 1 tersembunyi (ls -a)
Servis
cronberjalanmula semasa bootsshberjalanmula semasa bootnginxberjalanmula semasa boot
Petunjuk
Semak dulu denganls *.jpg. Corak sama, tiada risiko.Semak
Adakah *.jpg padan dengan nama ini? Asingkan.
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Cuba
Tab completion (lengkap automatik) jimat menaip. Taip cat no, kemudian tekan Tab. Shell habiskan nama itu. Tekan Enter.
Anda you di /home/you/kedai/inbox. 7 benda di sini. Servis: cron berjalan, ssh berjalan, nginx berjalan.
you@kedai:~/kedai/inbox$Folder ~/kedai/inbox
- menu1.txt (fail)
-rw-r--r-- - menu10.txt (fail)
-rw-r--r-- - menu2.txt (fail)
-rw-r--r-- - nasi.jpg (fail)
-rw-r--r-- - notes.md (fail)
-rw-r--r-- - roti.jpg (fail)
-rw-r--r-- - teh.jpg (fail)
-rw-r--r--
+ 1 tersembunyi (ls -a)
Servis
cronberjalanmula semasa bootsshberjalanmula semasa bootnginxberjalanmula semasa boot
Petunjuk
Di telefon, Tab ada dalam baris kekunci di bawah terminal.Anda berjaya!
Kini anda boleh padankan banyak fail sekali gus, dan biar Tab menaip.
Nak tahu lebih (pilihan)
Tanda petik hentikan pertukaran: echo "*.jpg" cetak bintang itu sendiri. Tiada padanan? ls *.png kata No such file or directory.
Latihan sebenar (pilihan): di Linux, taip cat /etc/os- dan tekan Tab.
Di mana cerita ini tak tepat: rumah kedai sebenar ada dinding. Di sini bilik cuma nama dalam senarai. Alih bilik cuma tukar nama.
English
The inbox has 3 food photos today. Next week it will have 300. They all belong in a photos room. Will you type 300 names?
* is a wildcard: it matches any letters. The shell swaps *.jpg for every matching name before the command runs. echo shows the swap.
? matches exactly one character. What does echo menu?.txt print?
Make a photos room. Then move every photo in with one pattern: mv *.jpg photos/.
ls *.jpg. Same pattern, no risk.Does *.jpg match the name? Sort them.
Tab completion saves typing. Type cat no, then press Tab. The shell finishes the name. Press Enter.
You can now match many files at once, and let Tab type.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Bash manual: Filename Expansion · Bash manual: Pattern Matching · Bash manual: Commands for completion
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?