Linux va terminal

Fayl tizimi va navigatsiya

Terminalda ishlashning birinchi ko'nikmasi โ€” navigatsiya, ya'ni papkalar orasida yurish va nima qayerda joylashganini bilish. Bu darsda Linux fayl tizimining tuzilishini, joriy joyni aniqlash, papkalarni ko'rish, ular ichiga kirish va yangi papka yaratishni o'rganamiz.

Linux fayl tizimi tuzilishi

Windowsda disklar C:, D: kabi harflar bilan ajratiladi. Linuxda esa bitta daraxt bor: eng tepada / (root, ildiz) turadi, qolgan hamma narsa uning ichiga joylashadi. Barcha disklar, papkalar, hatto USB fleshka ham shu yagona daraxtga "ulanadi".

Ildizdagi asosiy papkalar va ularning vazifasi:

Linuxda "hamma narsa โ€” fayl" degan falsafa bor. Nafaqat hujjatlar, balki qurilmalar, jarayonlar va hatto tarmoq ulanishlari ham fayl kabi ko'rinishi mumkin. Bu tizimni juda mustahkam va yaxlit qiladi.

pwd โ€” joriy joyni aniqlash

Terminalda har doim biror papka "ichida" turasiz โ€” bu joriy ish papkasi (current working directory). Qayerda ekaningizni bilish uchun pwd (print working directory) buyrug'ini tering:

pwd

Natija sifatida to'liq yo'l chiqadi, masalan:

/home/aziz/loyihalar

Bu โ€” siz hozir loyihalar papkasida turganingizni bildiradi, u esa aziz ichida, u ham home ichida, u esa ildizda.

ls โ€” papka mazmunini ko'rish

ls (list) buyrug'i joriy papkadagi fayl va papkalar ro'yxatini chiqaradi:

ls

Bu qisqacha ro'yxatni beradi. Lekin ls ning flaglari (qo'shimcha sozlamalari) bilan ko'proq ma'lumot olish mumkin. Flaglar buyruqdan keyin - bilan yoziladi:

ls -l

-l (long) โ€” batafsil ro'yxat: har bir fayl alohida qatorda, ruxsatlari, egasi, hajmi va o'zgartirilgan sanasi bilan chiqadi. Masalan:

-rw-r--r-- 1 aziz aziz 2048 Jul  1 10:30 hujjat.txt
drwxr-xr-x 2 aziz aziz 4096 Jun 28 09:15 rasmlar

Boshidagi harf turini bildiradi: d โ€” papka (directory), - โ€” oddiy fayl. Ruxsatlar (rw-r--r--) haqida keyingi darsda batafsil gaplashamiz.

Boshqa foydali flaglar:

Flaglarni birlashtirish mumkin. Eng ko'p ishlatiladigan kombinatsiya:

ls -lah

Bu โ€” batafsil (l) + yashirin fayllar bilan (a) + o'qishga qulay hajmda (h). Amalda deyarli har doim shu ko'rinishda ishlatiladi.

Buyruq oxiriga papka nomini qo'shsangiz, o'sha papkaning ichini ko'rasiz โ€” kirmasdan turib: ls -l /etc. Bu /etc papkasi mazmunini ko'rsatadi, lekin joriy joyingiz o'zgarmaydi.

cd โ€” papkalar orasida yurish

cd (change directory) buyrug'i joriy papkani o'zgartiradi. Papka nomini yozib, ichiga kirasiz:

cd loyihalar

Bu "loyihalar" papkasiga kiradi. Bir necha muhim maxsus shakllari bor:

Bir necha papkani ketma-ket o'tish uchun yo'lni / bilan yozasiz:

cd loyihalar/veb-sayt/src
Papka yoki fayl nomini to'liq yozmang โ€” bir-ikki harfini yozib Tab tugmasini bosing, shell qolganini avtomatik to'ldiradi. Bu avto-to'ldirish (autocomplete) โ€” terminalda tezlikning kaliti. Agar bir necha mos variant bo'lsa, Tabni ikki marta bosing โ€” hammasi ro'yxat bo'lib chiqadi.

Mutlaq va nisbiy yo'llar

Yo'l (path) ikki xil bo'ladi:

Misol bilan tushunaylik. Aytaylik, siz /home/aziz da turibsiz:

cd /home/aziz/loyihalar    # mutlaq yo'l
cd loyihalar               # nisbiy yo'l (natija bir xil)

Ikkalasi ham bir xil joyga olib boradi, chunki joriy papka /home/aziz edi.

Maxsus belgilar: ~ . ..

Yo'llarda uch qisqartma juda tez-tez ishlatiladi:

cd ~/loyihalar     # uy papkasidagi loyihalar
cd ../boshqa       # yuqoriga chiqib, boshqa papkaga kirish
ls ..              # ota-papka mazmunini ko'rish (o'zi kirmasdan)

mkdir โ€” papka yaratish

mkdir (make directory) yangi papka yaratadi:

mkdir yangi-loyiha

Bir vaqtning o'zida bir necha papka yaratish ham mumkin:

mkdir hujjatlar rasmlar videolar

Agar ichma-ich (bir vaqtning o'zida ota va bola) papkalar yaratmoqchi bo'lsangiz, -p (parents) flagini ishlating:

mkdir -p loyiha/src/komponentlar

Bu "loyiha" bo'lmasa ham, uni va ichidagi barcha papkalarni bir yo'la yaratadi. -p siz esa "ota-papka topilmadi" xatosi chiqardi.

rmdir โ€” bo'sh papkani o'chirish

rmdir (remove directory) papkani o'chiradi, lekin faqat u bo'sh bo'lsa:

rmdir eski-papka

Agar papka ichida fayl yoki boshqa papka bo'lsa, rmdir "papka bo'sh emas" degan xatolik beradi va o'chirmaydi.

Ichida fayllari bor papkani o'chirish uchun rm -r ishlatiladi, lekin u juda xavfli โ€” hamma narsani so'roqsiz o'chiradi. Buni keyingi darsda ehtiyotkorlik bilan o'rganamiz. Hozircha bo'sh papkalar uchun rmdir โ€” xavfsiz tanlov.

Xulosa