Yangi boshlanuvchilar uchun BASH - 1-qism - Salom dunyo

Internetda Shell skriptlarini BASH yordamida yaratishni ko'rsatadigan ko'plab ko'rsatmalar mavjud va bu qo'llanma biroz boshqacha tarjima qilishni maqsad qilib qo'ygan, chunki u juda kam shell scripting tajribasi bo'lgan bir kishi tomonidan yozilgan.

Endi bu sizning fikringiz aslo aqldan ozgan deb o'ylashingiz mumkin, lekin men sizning fikringizcha, ba'zi bir rahbarlar siz bilan allaqachon ekspert va boshqa rahbarlar sizni ta'qib qilishni to'xtatish uchun juda uzoq vaqt talab qilayotganidek, siz bilan gaplashishadi.

LINUX / UNIX shellli skript yozish tajribasi cheklangan bo'lsa-da, men savdo-sotiq bilan dastur ishlab chiquvchisiman va men PERL, PHP va VBScript kabi skript tilida dab qo'liman.

Ushbu qo'llanmaning ma'nosi shundaki, siz o'rgangan narsalarni o'rganib chiqaman va men olgan har qanday ma'lumotni sizga topshiraman.

Ishni boshlash

Ko'rinib turibdiki, men sizlarga darhol turli xil qobiq turlari va KSH va CSH orqali BASHni qo'llashning afzalliklari haqida aytib berishim mumkin.

Aksariyat odamlar yangi narsalarni o'rganayotganda birinchi bo'lib sakrash va dastlab amaliy mashg'ulotlardan boshlashni istashadi va shu bilan sizni hozirda muhim bo'lmagan trivia bilan uyg'otmayman.

Ushbu qo'llanmani bajarishingiz uchun kerak bo'lgan barcha matn muharriri va BASH (Linux tarqatishning ko'p qismida standart qobiq) ishlaydigan terminal.

Matn tahrirlovchisi

Men o'qigan boshqa yo'riqnomalar buyruqlar rangini kodlashni o'z ichiga olgan matn muharriri kerakligini va tavsiya etilgan tahrirlovchilarning VIM yoki EMACS bo'lganligini talab qiladi .

Rang kodlash sizni yozganda komandalarni ta'kidlaydi, lekin mutlaqo yangi boshlanuvchilar uchun bir necha xafta VIM va EMACS dasturlarini bir qator kod yozishsiz sarflashingiz mumkin.

Ikkalasidan EMACS ni afzal ko'raman, lekin halol bo'lish uchun nano , gedit yoki leafpad kabi oddiy muharrirlardan foydalanishni afzal ko'raman.

O'z kompyuteringizda skriptlarni yozyapsiz va siz har doim grafik muhitga ega bo'lishingizni bilsangiz, siz uchun eng yaxshi ishlaydigan tahrirlovchini tanlashingiz mumkin va u GEdit yoki grafik terminalda to'g'ridan-to'g'ri ishlaydigan tahrirlovchisi bo'lishi mumkin. nano yoki vim kabi.

Ushbu qo'llanmaning maqsadi uchun men nanodan foydalanaman, chunki u ko'pincha Linux tarqatilishida ko'pincha o'rnatiladi va shuning uchun unga kirishingiz mumkin.

Terminal oynasini ochish

Linux Mint yoki Ubuntu kabi grafik ish stoli bilan Linux tarqatilishini foydalanayotgan bo'lsangiz, CTRL + ALT + T tugmalarini bosib terminal oynasini ochishingiz mumkin.

Skriptlarni qaerga qo'yish kerak

Ushbu qo'llanmaning maqsadi sizning skriptlaringizni o'zingizning asosiy papkangiz ostidagi papkaga qo'yishingiz mumkin.

Terminal oynasida quyidagi buyruqni kiritib, o'zingizning asosiy papkangizda ekanligingizga ishonch hosil qiling:

CD ~

CD buyrug'i o'zgarish katalogini anglatadi va tilde (~) - bu sizning asosiy papkangiz uchun yorliq.

Quyidagi buyruqni kiritib, to'g'ri joyda ekanligingizni tekshirishingiz mumkin:

pwd

Pwd buyrug'i sizning joriy ishchi katalogingizni (siz daraxt papkasida joylashgan) sizga xabar beradi. Mening holimda u / home / gary qaytib keldi.

Keling, ssenariyangizni to'g'ridan-to'g'ri uy papkasida joylashtirishni xohlamaysiz, shuning uchun quyidagi buyruqni kiritib, skript deb nomlangan papka yarating.

mkdir skriptlari

Quyidagi buyruqni kiritib yangi skriptlar papkasini o'zgartiring:

CD buyruqlari

Birinchi skript

Birinchi dasturni oddiygina "Salom Dunyo" so'zini chiqarish uchun qanday dasturlashni o'rganish odatiy holdir.

Sizning skriptlaringiz papkasidan quyidagi buyruqni kiriting:

nano-helloworld.sh

Endi nano-oynaga quyidagi kodni kiriting.

#! / bin / bash echo "salom dunyo"

Faylni saqlash uchun CTRL + O tugmalarini bosing va nano-dan chiqish uchun CTRL + X tugmalarini bosing.

Skriptning o'zi quyidagicha ko'rinadi:

#! / Bin / bash siz yozgan barcha skriptlarning yuqori qismiga kiritilishi kerak, chunki tarjimonlar va operatsion tizim faylni qanday ishlashini bilishadi. Asosan, uni qo'yishni unutmang va nega buni unutib qo'ying.

Ikkinchi satrda echo deb ataladigan bir buyruq bor, u darhol unga mos keladigan matnni chiqaradi.

Agar bir nechta so'zlarni ko'rsatishni istasangiz, so'zlar atrofida ikkita tirnoq (") ishlatish kerak.

Siz quyidagi buyruqni kiritib, skriptni ishga tushirishingiz mumkin:

sh helloworld.sh

"Salom dunyo" so'zlari paydo bo'lishi kerak.

Buyruqlarni ishlatishning yana bir yo'li quyidagicha:

./helloworld.sh

Sizning terminalda ushbu buyruqni darhol ishga tushirsangiz, sizda ruxsatni olish xatoligi bo'ladi.

Skriptni shu tarzda ishga tushirish uchun ruxsat berish uchun quyidagilarni yozing:

sudo chmod + x helloworld.sh

Xo'sh, u erda aslida nima sodir bo'ldi? Nima uchun siz sh helloworld.sh ni ruxsatnomalarni o'zgartirmasdan, balki ishlay olmasdan boshqarolmadingiz? /helloworld.sh savolga sabab bo'ldi?

Birinchisi, helloworld.sh-ni kirib olgan bash interpreter-ni yuklaydi va u bilan nima qilish kerakligini aniqlaydi. Bosh tarjimon allaqachon ishga tushirish uchun ruxsatnomalarga ega va faqat skriptdagi buyruqlarni ishlatish kerak.

Ikkinchi usul, operatsion tizimni skript bilan nima qilish kerakligini ishlab chiqishga imkon beradi va shuning uchun uni bajarish uchun bajariladigan bitni talab qiladi.

Yuqoridagi skript yaxshi, ammo tirnoq belgilari ko'rsatishni istasangiz nima sodir bo'ladi?

Bunga erishish uchun turli yo'llar mavjud. Misol uchun, tirnoq belgilari oldida teskari egri chiziq qo'yish mumkin:

echo \ "salom dunyo \"

Bu "salom dunyosi" ni ishlab chiqaradi.

Bir daqiqa kutib turing, agar "salom dunyosi" ni ko'rsatsangiz nima bo'ladi?

Xo'sh, qochish belgilaridan qochib qutulishingiz mumkin

echo \\ "\" salom dunyo \\ "\"

Bu "\" salom dunyosi \ "mahsulotini ishlab chiqaradi.

Endi nima deb o'ylayotganingizni bilaman. Lekin, albatta, \ "\" \ "Salom dunyo \\" \ "

Barcha qochish belgilar bilan echolardan foydalanish juda achinarli bo'lishi mumkin. Printf deb ataladigan muqobil buyruqlar mavjud.

Masalan:

printf '% s \ n' '\ \ "\" salom dunyo \\ "\" "

Ko'rsatmoqchi bo'lgan matn bitta tirnoq oralig'ida. Printf buyrug'i ssenariyangizdan matnni chiqaradi. % S bu satrni ko'rsatadigan ma'noni bildiradi, \ n yangi qatorni chiqaradi.

Xulosa

Biz, aslida, qisman juda ko'p narsalarni yoritmadik, lekin umid qilamanki, sizning dastlabki skriptingiz ishlaydi.

Keyingi qismda turli xil rangdagi matnlarni ko'rsatish, kirish parametrlarini qabul qilish va ularga ishlov berish, parametrlarni o'zgartirish va kodingizni sharhlash uchun salom dunyo buyumlarini takomillashtirishni ko'rib chiqamiz.