|
O`zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti farg`ona filiali
|
bet | 1/4 | Sana | 03.06.2024 | Hajmi | 0,68 Mb. | | #259542 |
Bog'liq linux
O`ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT
TEXNOLOGIYALARI UNIVERSITETI
FARG`ONA FILIALI
“KOMPYUTER INJINIRINGI” FAKULTETI
3-kurs 614-20 guruh talabasi
Meliboyev Umaralining Linux server fanidan mustaqil ishi
FARG’ONA – 2023
Shell komanda qobig‘ida ishlash
Reja:
Ls 16
Xulosa: 20
Sodda shell skriptlarini yozish
Shell qobig‘i buyruq interpretatori va yuqori sath dasturlash tili
hisoblanadi. Buyruq interpretatori sifatida shell komandalar qatoriga kiritilga komandalarni qayta ishlaydi. Yuqori sath dasturlash tili sifatida shell scripts nomli faylda saqlanuvchi buyruqlarni qayta ishlaydi. Boshqa tillar kabi shell o‘zgaruvchilar va oqimni boshqarish buyruqlariga ega(masalan, for sikllari va if shart operatori). Shellni buyruqlar qatori interpretatori sifatida foydalanilganda
ishlaydigan muhitingizni sozlashingiz mumkin. Siz o‘z displeyingizda joriy katalog nomini, funksiya yaratishni yoki cp psevdonimini qo‘yishingiz, aspektlarni o‘zgartirish uchun kalitso‘zlardan foydalanish va boshqalarni amalga oshirish
mumkin. Siz bundan tashqari hisobotlar to‘plamini ishga tushuruvchi uzun script uchun qiyin buyruqni saqlovchi ish bajarilgandan so‘ng sizga chop etishni va yuborishni eslatishdan iborat shell ssenariysini yozishingiz mumkin. Boshqa ssenariylar dasturlar hisoblanib, ular faqatgina dasturni ishga tushurmaydi. Ko‘pchilik shell ssenariylari Bourne Again Shell ostida ishga tushurilish uchun yozilgan. Bir foydalanuvchili rejimda tizim yuklanishini yoki tizimga texnik xizmat ko‘rsatishni, ma‘murlashni yoki ta‘mirlash ishlarini amalga oshirish shell bilan tanishishni eng yaxshi usuli hisobalandi.
Sarlavha
Bourne Again Shell Bell Labarotories dagi AT&T xodimi Stiv Born
tominidan yozilgan Bourne Shell ga asosl angan. Ko‘plab yillar davomida haqiqiy Bourne Shell kengaytirilib kelindi, ammo haligacha bazaviy shell bilan ko‘plab UNIX tizimlari ta‘minlangan. O‘zining uzoq va muvaffaqiyatli tarixi davomida original shell UNIX tizimini boshqarish uchun yordam beruvchi skriptlar yozishda foydalanilingan. Linux tizimida ba‘zi bir skriptlar Bourne Again Shell ssenariysi
ko‘rinishida paydo bo‘lmoqda. Bourne Again Shell original Shell da bo‘lmagan ko‘plab kengaytmalar va funksiyalarni o‘zida jamlasa ham original shell bilan moslik mavjud, shuning uchun ham ssenariylarni bash qobig‘i ostida ishga tushurish mumkin. UNIX tizimlarida haqiqiy Bourne Shell sh deb nomlangan. Linux tizimlarida sh bashni ta‘minlash uchun Bourne Shell ishlab turishini talab etuvchi havola bo‘lib xizmat qiladi. sh chaqirilganda Bourne Shellni
emulyatsiyalash uchun barcha imkoniyatni ishga soladi. V Unix tizimi Devid korn tomonidan yozilgan Korn Shell(ksh)ni namoyish etdi. Bu qobiq ko‘plab original Bourne Shell funksiyalar bilan kengaytirilib, qo‘shimcha imkoniyatlar qo‘shildi. Bourne Again Shell ba‘zi buyruqlar psevdonimi va buyruqlar qatorini tahrirlash imkoniyati xususiyatlari Korn Shell o‘xshash tomonlariga asoslangan. POSIX oilasiga mansub standartlar PASC komiteti tomonidan ishlab chiqiladi.
POSIX 1003.2 qobiqning standart funksionalligini izohlaydi. Bourne Again Shell POSIX standartining talablarga mos funksiyalar bilan ta‘minlaydi. Buni bajarish uchun to‘liq kuch bilan harakat qilinadi. Bashni chaqirayotganingizda --posix shaklida amalga oshirilish POSIX standartiga to‘liq moslikni ta‘minlaydi.
Shell bazaviy xususiyatlar(Shell Basics)
Bu xususiyatlar yuklanish fayllarini yozish va undan foydalanish va standart xatolikni yo‘naltirish, shell soda ssenariylarini yozish va bajarish, buyruqlarni guruhlash, vazifalarni boshqaruvini realizatsiyalash va stek kataloglarni manipulatsiyalshni qamrab oladi.
Yuklanuvchi fayllar Shellni ishga tushurganda avtomatik tarzda yuklanuvchi fayllarni inisializatsiyalaydi. Shell ishga tushuvchi fayllar u interaktivmi(bash buyrug‘ini olish singari) yoki interaktiv emasmi(shell skriptni bajarishda yakka foydalanilgan) shunga bog‘liq. Siz fayldagi buyruqni bajarish uchun o‘qish ruxsatiga ega bo‘lshingiz kerak. Fedora/RHEL mos buyruqlarni ba‘zi shunday fayllarga joylaydi.
Shellga kirish Bu bo‘limda ko‘riladigan fayllar ro‘yhatga olingan va --loginoption parametri bilan ishga tushurilgan shellda bajariladi. Kirish o‘ziga xos interaktivdir. Shell birinchi bo‘lib /etc/profile dagi buyruqlarni bajarardi. Sup er foydalanuvchi bu faylni bash foydalanuvchi uchun tizim uchun umumiy bo‘lgan
xarakteristikalarida standart qilib o‘rnatishi mumkin.
So‘ngra shell faylni ~/.bash_profile, ~/.bash_login va ~/.profile ketma -ketlik bo‘yicha birinchi fayldagi buyruqni bajarish uchun izlaydi. Siz aniqlashtirish uchun buyruqlarni keltirilgan fayllardan biriga joylashingiz mumkin.
Boshida Tizimdan chiqishda bash ~/.bash_logoutfile fayldagi buyruqni bajaradi. Tez- tez buyruqlar seansdan so‘ng tozalanadi, ayniqsa vaqtinchalik fayllarni o‘chiruvchi va aylga yo‘naltiruvchi buyruqlar.
Ishga tushurish fayllarni yaratish Ko‘plab yuklanuvchi fayllar va toifalar shellda mavjud, sizga kerakli narsa uy katalogdagi .bash_profile va .bashrc fayllari hisoblanadi. Bu kabi buyruqlarga
misol: .bash_profile da ishga tushurish buyrug‘i, .bashrc da tizimga kirish uchun(.bashrc mavjud bo‘lganda). Bu o‘rnatma orqali .bashrc dagi buyruqlar kirgan va kirmagan shell orqali bajariladi.
if[ -f ~/.bashrc]; then source ~/.bashrc; fi
[ -f ~/.bashrc] sizning .bashrc nomli fayl uy katalogingizda mavjudligini
tekshiradi. .(nuqta) yoki source: joriy shellda ishga tushurish fayllari
.bashrc ishga tushish faylini tahrirlashdan so‘ng o‘zgartirish kuchga kirish uchun qayta kirib chiqish shart emas. Ishga tushurish faylini .(nuqta) yoki o‘rnatilgan manba orqali ishga tushurish mumkin. Boshqa buyruqlar kabi .(nuqta) buyruqlar qatorida bo‘sh joy(SPACE) bilan kelishi kerak. .(nuqta) yoki source dan
foydalanish shell ssenariyni ishga tushurishga o‘xshab ketadi. .(nuqta) yoki source dan ssenariylarda o‘zgaruvchilarni kiritish kabi o‘zgarishlar bilan ishga tushurishda foydalanish shellga o‘z ta‘sirini ko‘rsatadi. Siz .(nuqta) yoki source buyrug‘idan har qanday skriptni ishga tushurishda fayl sifatida sodir bo‘lmaydi. Quyidagi misolda, .bashrc bir necha o‘zgaruvchilarni o‘rnatadi va PS1 o‘rnatadi, host nomini so‘raydi. .(nuqta) yangi qiymatlarni kuchga kirishini ta‘minlaydi.
Standart xatolikni yo’naltirish
Bu bo‘lim standart chiqarish konsepsiyasini qamrab olib, buyruqni standart
chiqishini yo‘naltirishni tushuntirgan. Standart chiqishga qo‘shimcha ravishda
buyruqlar standart xatolik chiqishiga yuborilishi mumkin. Buyruqlar ma‘lumot bilan aralsh holda saqlash uchun xatolik xabarlarini standart xabar shaklida yuborishi mumkin.
Standart chiqishlarda bajarilgan kabi shell standart xatolik buyruqlarni ekranga yuboradi. Agarda yo‘naltirilmasa siz chiqish buyrug‘i signali bilan yuborilayotgan signal orasidagi farqni bilolmaysiz va bu standart xatolik kabi
jo‘natiladi. Deskriptor fayl – bu dastur o‘z natijasini yuboruvchi va kiritish formasidan kirish ma‘lumotlarini oluvchi joydir. Dastur bajarilish davomidadastur ishga
tushurish jarayoni 3 faylni ochadi: 0(standart kirish), 1(standart chiqish) va 2(standart xatolik). Yo‘naltirish chiqish simvoli qisqa 1> ko‘rinishga ega bo‘lib, shellga standart chiqishga yo‘naltirishni buyuradi. Xuddi shu kabi, < simvol 0<
qisqartmasi bo‘lib, standart kirishga yo‘naltiradi. 2> simvoli standart xatolikni yo‘naltiradi.
Quyidagi misollar standart chiqish va standart xatolikni turli xil va bir xil fayllarga yo‘naltirishni ko‘rsatadi. Cat utilitasini mavjud bo‘lmagan fayl nomi bilan ishga tushirganimizda cat standart xatolik fayliga xatolik haqida xabar yuboradi va mavjud faylni esa nusxalaydi va standart chiqishga yuboradi. Agar
yo‘naltirilmasa ekranga ikkala xabar ham chiqadi.
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
O`zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti farg`ona filiali
|