Bash (Bourne Again Shell) ეს არის უმეტესი GNU/Linux გარემოს ძირითადი შელი. ბრძანებები იწერება შელის ტერმინალში.იგი ემსახურება ოპერაციული სისტემის ბრძანებებით მართვას,მოდიფიცირებას ან თუნდაც მასზე ან ქსელში არსებულ მოწყობილობებზე ინფორმაციის მიღებას.ტერმინალს გააჩნია ორი ძირითადი ფორმატი:
[email protected]$
ან
[email protected]#
უფრო მარტივად რომ ვთქვათ $ ან #.სადაც $ ნიშნავს ჩვეულებრივ მომხმარებელს/სტუმარს და # აღნიშნავს ROOT-ს,მომხმარებელს სრული უფლებებით. (ადმინისტრატორი/სუპერმომხმარებელი)
აქვე გეტყვით იმსაც,რომ სისტემაში პირდაპირ root მომხმარებლით შესვლა გარკვეულ საფრთხესთან არის დაკავშირებული.შექმენით მომხმარებელი და თუ საჭირო იქნება ბრძანება გაუშვით sudo-ს მეშვეობით,რადგან უმეტესწილად შეცდომითი ბრძანების გაშვება ადმინისტრატორის უფლებებით აზიანებს სისტემას.
შელის სკრიპტი არის ტექსტური ფაილი, რომელიც იწყება ეგრედწოდებული Shebang-ით (სამწუხაროდ ზუსტი თარგმანი ვერ მოვიძიე...)
Shebang არის ხაზი რომელშიც #! ადგენს ინტერპრეტერის წყაროს.ხოლო /bin/bash არის ინტერპრეტერის ბრძანების გზა Bash-ისკენ
ანუ ყოველი ფაილი რომელიც Bash ენაზეა დაწერილი,აუცილებლად უნდა დაიწყოს
#! /bin/bash რათა ინტერპრეტერი მიხვდეს თუ რა სერვისი გაუშვას რომ მოხდეს მითითებული ბრძანებიდან გამომდინარე შესაბამისი შედეგის დადგომა.
Bash ფაილის ტერმინალში გაშვება რამოდენიმე ხერხით შეიძლება:
Bash-ში თითოეული ბრძანება ან მათი მიმდევრობა შეიძლება გამოვყოთ ; -ით
მაგალითად:
უფრო გასაგები რომ იყოს... მაგ:
# რათქმაუნდა გამოიყენება კომენტარებისთვის.
სკრიპტში ბეჭდვითი მოქმედების შესრულება ხდება echo ბრძანებით სხვადასხვანაირად.
მაგრამ რა ხდება როცა რაიმე სიმბოლოს ჩაწერა გვინდა ტექსტში,რომელიც უკვე დაკავებულია/ჩაშენებულია რაიმე მნიშვნელობით?
მაგალითისთვის ავღოთ ! სიმბოლო
როცა ვიყენებთ echo ბრძანებას რაიმე ვარიანტის დამატების გარეშე,მის მიერ ჩაწერილი ტექსტი ახალი ხაზიდან იწყება.
თუ მას დავუმატებთ n ვარიანტს ახალი ხაზიდან დაწყება გამოირიცხება,ხოლო თუ e ვარიანტს მივმართავთ გამორიცხავს ეგრედწოდებულ backslash-ს.
[email protected]$
ან
[email protected]#
უფრო მარტივად რომ ვთქვათ $ ან #.სადაც $ ნიშნავს ჩვეულებრივ მომხმარებელს/სტუმარს და # აღნიშნავს ROOT-ს,მომხმარებელს სრული უფლებებით. (ადმინისტრატორი/სუპერმომხმარებელი)
აქვე გეტყვით იმსაც,რომ სისტემაში პირდაპირ root მომხმარებლით შესვლა გარკვეულ საფრთხესთან არის დაკავშირებული.შექმენით მომხმარებელი და თუ საჭირო იქნება ბრძანება გაუშვით sudo-ს მეშვეობით,რადგან უმეტესწილად შეცდომითი ბრძანების გაშვება ადმინისტრატორის უფლებებით აზიანებს სისტემას.
შელის სკრიპტი არის ტექსტური ფაილი, რომელიც იწყება ეგრედწოდებული Shebang-ით (სამწუხაროდ ზუსტი თარგმანი ვერ მოვიძიე...)
Bash:
#! /bin/bash
ანუ ყოველი ფაილი რომელიც Bash ენაზეა დაწერილი,აუცილებლად უნდა დაიწყოს
#! /bin/bash რათა ინტერპრეტერი მიხვდეს თუ რა სერვისი გაუშვას რომ მოხდეს მითითებული ბრძანებიდან გამომდინარე შესაბამისი შედეგის დადგომა.
Bash ფაილის ტერმინალში გაშვება რამოდენიმე ხერხით შეიძლება:
Bash:
bash test.sh # ამ შემთხვევაში bash გამოიყენება არსებული ფაილის დირექტორიიდან
#ანუ როცა ვიმყოფებით მაგალითად
#/Desktop/bash/ დირექტორიაში,რომელიც ჩვენ შევმენით და არა სისტემამ
#როგორც ეს /bin/bash - ის შემთხვევაშია.
Bash:
bash /Desktop/bash/test.sh #ამ შემთხვევაში ჩვენ მივუთითეთ სრული წყარო
#ანუ /Desktop/bash რირექტორია რომელშიც მდებარეობს
#ბეშ ფორმატის მქონე ფაილი
Bash:
chmod a+x test.sh #ამ შემთხვევაში ფაილს ვანიჭებთ შესრულებად ნებართვას
#ანუ "executable permissions"
./test.sh #ტერმინალში გაშვების შემდეგ პირდაპირ შეასრულებს ბრძანებას
# "./" ტერმინალი ცნობს წყაროს
# ანუ /Desktop/bash/test.sh
მაგალითად:
Bash:
cmd1 ; cmd2
# ანუ პირველი წარმოადგენს ორი ბრძანების მიმდევრობით გაშვებას ერთ ხაზზე
#ხოლო მეოთხე და მეხუთე ხაზი წარმოადგენს ბრძანებათა ახალი ხაზიდან გაშვებას
cmd1
cmd2
Code:
apt-get update && apt-get upgrade -y
#დაახლოებით იგივე პრინციპია
apt-get update
apt-get upgrade -y
სკრიპტში ბეჭდვითი მოქმედების შესრულება ხდება echo ბრძანებით სხვადასხვანაირად.
Bash:
echo "Welcome to first Bash tutorial"
#გამოიტანს შემდეგ ტექსტს
Welcome to first Bash tutorial
Bash:
echo Welcome to first Bash tutorial
#ასევე გამოიტანს იგივე შედეგს ანუ "" მითითების გარეშეც...
Welcome to first Bash tutorial
Bash:
echo 'Welcome to first Bash tutorial'
#ასევე ექნება იგივე შედეგი
Welcome to first Bash tutorial
მაგალითისთვის ავღოთ ! სიმბოლო
Bash:
echo "Welcome to first Bash tutorial!" #ამოაგდებს შეცდომას რადგან ორმაგფრჩხილში ! სიმბოლო
#სხვანაირად აღიქმება ამიტომ უნდა გამოვიყენოთ "\"
echo "Welcome to first Bash tutorial\!"
Welcome to first Bash tutorial!
echo Welcome to first Bash tutorial! #ამ მაგალითში საჭირო არ არის \ სიმბოლოს გამოყენება
Welcome to first Bash tutorial! # \ სიმბოლო "" -ში გამოიყენება მხოლოდ
echo 'Welcome to first Bash tutorial\!' #როგორც ხედავთ არც ამ შემთხვევაშია საჭირო \ სიმბოლო
Welcome to first Bash tutorial!
თუ მას დავუმატებთ n ვარიანტს ახალი ხაზიდან დაწყება გამოირიცხება,ხოლო თუ e ვარიანტს მივმართავთ გამორიცხავს ეგრედწოდებულ backslash-ს.
Bash:
#!/bin/bash
echo "Welcome to first Bash tutorial"
echo -n "Welcome to first Bash tutorial"
echo -e "\nbackslashis \t simboloebis \t gamoricxva" #სადაც \t tab-ით დაშორებაა
ხოლო \n ახალი ხაზიდან დაწყება
Last edited by a moderator:
Likes:
SIMBIOS and G30RG14N