Interactive tasks attached to this lesson — complete them in a real Kubernetes environment and check the result.
terminal
Terminal navigatsiyasi: fayllarni joy-joyiga qo'yish
Osonbolt+10 XPflagRequired
Sizga chala qolgan ish stoli meros qoldi: /root/mashq/ ichida hujjatlar sochilib yotibdi. Faqat darsda o'rgangan buyruqlaringiz bilan — pwd, ls, cd, cat, mkdir, cp, mv, rm — hammasini tartibga soling. Vazifa ls bilan /root/mashq/ ichini o'rganing. /root/ish/loyiha katalog zanjirini yarating (bitta buyruq bilan bo'ladi). /root/mashq/hujjatlar/eslatma-eski.txt faylini /root/ish/loyiha/ga eslatma.txt nomi bilan nusxalang (asl fayl joyida qolsin). /root/mashq/rasmlar/logo.png ni /root/ish/loyiha/ga ko'chiring (eski joyida qolmasin). /root/mashq/keraksiz.tmp faylini o'chiring . /root/ish/loyiha ichiga kirib, pwd chiqishini qayerdaman.txt fayliga yozing. Muvaffaqiyat mezoni Nusxa mazmuni asl bilan aynan bir xil; ko'chirilgan fayl eski joyida YO'Q qayerdaman.txt ichida haqiqiy pwd chiqishi
terminal
Bash: birinchi skript va chiqish kodi
Osonbolt+5 XP
CI quvuriga muhit tayyorligini e'lon qiladigan minimal skript kerak — quvur skript natijasini chiqish kodi orqali baholaydi. Vazifa (/root/sh/script.sh) stdout'ga environment-ready matnini chiqarsin Muvaffaqiyatli yakunda chiqish kodi 0 bo'lsin (aniq exit 0 bilan) Muvaffaqiyat mezoni (jonli) bash script.sh → environment-ready, chiqish kodi 0
terminal
Bash: buyruq almashtirish bilan jonli hisobot
Osonbolt+15 XP
Inventarizatsiya skripti konfiguratsiya katalogidagi .conf fayllar sonini hisoblab berishi kerak — qiymat har chaqiruvda JONLI hisoblanadi (qattiq yozilgan son emas). Boshlang'ich holat /root/sh/conf/ katalogida bir nechta .conf fayl bor Vazifa (/root/sh/script.sh) conf katalogidagi .conf fayllar sonini buyruq almashtirish ($( )) bilan hisoblasin conf-files= formatida chiqarsin Muvaffaqiyat mezoni (jonli) Fayllar to'plami o'zgartirib sinalganda ham son to'g'ri chiqadi (checker turli to'plam bilan tekshiradi)
terminal
Bash: case bilan buyruq marshrutlash
Osonbolt+15 XP
Servis boshqaruv skripti kichik CLI kabi ishlashi kerak: start, stop, status buyruqlari va notanish buyruq uchun aniq xato. Vazifa (/root/sh/script.sh) Bitta argument: amal nomi (case bilan marshrutlansin) start → starting service, stop → stopping service, status → service is running (hammasi kod 0) boshqa qiymat → unknown-action chiqarib 2 bilan chiqsin Muvaffaqiyat mezoni (jonli) To'rt holat ham checker tomonidan sinaladi
terminal
Bash: chiqish kodini $? bilan ushlash
Osonbolt+15 XP
Diagnostika skripti buyruq natijasini YO'QOTMASDAN hisobot qilishi kerak: kod keyingi buyruqdan keyin o'chib ketadi — darhol saqlash shart. Vazifa (/root/sh/script.sh) Bitta argument: yo'l ls ni jim bajarsin (chiqishlari yutilsin) Chiqish kodini DARHOL rc o'zgaruvchisiga olsin (rc=$?) exit= chiqarib, o'zi 0 bilan tugasin Muvaffaqiyat mezoni (jonli) /etc → exit=0; yo'q yo'l → exit=2 (skriptning o'z kodi 0)
terminal
Bash: buyruqni funksiyaga marshrutlash (dispatch)
Murakkabbolt+25 XP
Boshqaruv skripti kichik CLI: har buyruq o'z funksiyasida, case faqat marshrutlaydi — mantiq va marshrut ajratilgan. Vazifa (/root/sh/script.sh) start svc funksiyasi svc: started, stop svc funksiyasi svc: stopped chiqarsin case "$1" orqali start → start svc, stop → stop svc chaqirilsin Notanish buyruq: no-handler chiqarib 2 bilan chiqsin Muvaffaqiyat mezoni (jonli) start/stop/notanish uchala holat sinaladi
terminal
Bash: buyruqlar blokini to'liq faylga yo'naltirish
Murakkabbolt+25 XP
Diagnostika bosqichi bir nechta buyruqdan iborat — ULARNING BARCHA chiqishi (stdout+stderr) bitta faylga tushishi kerak, har buyruqqa alohida yo'naltirish yozmasdan. Vazifa (/root/sh/script.sh) { ...; } bloki ichida: echo "diag start" va ls /yoq-katalog-xyz bajarilsin Blokning BUTUN chiqishi diag.log ga: diag.log 2 &1 Skript oxirida stdout'ga saved chiqarsin Muvaffaqiyat mezoni (jonli) diag.log ichida ham oddiy xabar, ham xato matni bor; terminal toza