Დამწყებთათვის გზამკვლევი ბიჯი - შეყვანის პარამეტრები

კეთილი იყოს თქვენი მობრძანება ბიბლიის სერიის მე -2 ნაწილის სახელმძღვანელოში, რომელიც უნიკალურია იმით, რომ ეს არის დამწყებთათვის განკუთვნილი დამწყები ბიბლია.

ამ სახელმძღვანელოს მკითხველებს ავაშენებ მათ ცოდნას, როგორც მე ვიღებ ჩემს ცოდნას და იმედს ბოლომდე ყველა ჩვენ შეგვიძლია დავწეროთ რამდენიმე ჭკვიანი სკრიპტი.

გასულ კვირას მე დაფუძნებდი პირველი სკრიპტის შექმნა, რომელიც უბრალოდ "Hello World" - ის სიტყვებით არის ნაჩვენები. ის მოიცავს ისეთ საგნებს, როგორებიცაა ტექსტური რედაქტორები, თუ როგორ უნდა გახსენით ტერმინალის ფანჯარა, სადაც თქვენს სკრიპტებს აყენებთ, თუ როგორ უნდა გამოაჩინოთ სიტყვა "გამარჯობა" და ზოგიერთი დამატების სიმბოლოები, როგორიცაა ციტატები ("").

ამ კვირაში ვაპირებ შეყვანის პარამეტრების დაფარვას. არსებობს სხვა გიდები, რომლებიც ასწავლიან ამ სახის რამ, მაგრამ მე ისინი ხტომა შევიდა ზოგიერთი საკმაოდ დაბალი დონის პერსონალის და შესაძლოა ძალიან ბევრი ინფორმაცია.

რა არის პარამეტრი?

"Hello World" სკრიპტში ბოლო გაკვეთილიდან ყველა ეს ძალიან სტატიკური იყო. სცენარი ნამდვილად არ ყოფილა.

როგორ შეგვიძლია გაუმჯობესდეს "Hello World" სკრიპტი?

რაც შეეხება სკრიპტს, რომელიც მიესალმება პიროვნებას, რომელიც გადის? იმის ნაცვლად, რომ "Hello World" იტყოდა "Hello Gary", "Hello Tim" ან "Hello Dolly".

შეყვანის პარამეტრების მიღების უნარის გარეშე ჩვენ უნდა დავწეროთ სამი სკრიპტი "hellogary.sh", "hellotim.sh" და "hellodolly.sh".

ჩვენი სკრიპტის გამოყენების საშუალებას შეყვანის პარამეტრების წაკითხვა შეგვიძლია გამოვიყენოთ ერთი სკრიპტი ვინმესთვის.

ამისათვის გახსენით ტერმინალის ფანჯარა (CTRL + ALT + T) და ნავიგაცია თქვენი სკრიპტების საქაღალდეში შემდეგით: ( cd ბრძანება )

CD სკრიპტები

შექმენით ახალი სკრიპტი, რომელსაც უწოდებენ greetme.sh შემდეგი სიტყვებით აკრეფით: ( touch command )

სცენა greetme.sh

გახსენით სკრიპტი თქვენს საყვარელ რედაქტორში შემდეგი სიტყვებით: ( ნანო ბრძანების შესახებ )

ნანო greetme.sh

შეიყვანეთ შემდეგი ტექსტი:

#! / bin / bash echo "hello $ @"

დააჭირეთ CTRL და O ფაილის შენახვა და შემდეგ CTRL და X ფაილის დახურვა.

სკრიპტის გაშვება შემდეგნაირად შეიყვანეთ ბრძანებათა სტრიქონით შეცვლის თქვენი სახელით.

sh greetme.sh

თუ ჩემს სახელს სკრიპტს ავიწყებ, ეს სიტყვები "გამარჯობა გარი" აჩვენებს.

პირველი ხაზის აქვს #! / Bin / bash ხაზი, რომელიც გამოიყენება იდენტიფიცირება ფაილი, როგორც bash სცენარი.

მეორე ხაზი იყენებს echo- ს განცხადებას სიტყვის გამოძახებით და შემდეგ არის უცნაური $ @ ნოტაცია. ( echo ბრძანების შესახებ )

$ @ აფართოებს აჩვენებს ყველა პარამეტრი, რომელიც შევიდა სკრიპტის სახელით. ასე რომ, თუ თქვენ აკრეფილი "sh greetme.sh tim" სიტყვა "გამარჯობა დრო" იქნება ნაჩვენები. თუ აკრეფილი "greetme.sh tim smith" მაშინ სიტყვა "hello tim smith" იქნება ნაჩვენები.

ეს შეიძლება იყოს კარგი greetme.sh სკრიპტი უბრალოდ ვამბობ გამოყენებით მხოლოდ პირველი სახელი. არავის არ ამბობს "მიესალმებიან გილოცავ", როდესაც ისინი ხვდებიან, შეიძლება ითქვას, რომ "მიესალმებიან გული".

მოდით შევცვალოთ სკრიპტი ისე, რომ იგი იყენებს მხოლოდ პირველ პარამეტრს. გახსენით greetme.sh სკანირება ნანოში შემდეგი სიტყვებით:

ნანო greetme.sh

შეცვალეთ სკრიპტი ისე, რომ იგი შემდეგნაირად იკითხება:

#! / bin / bash echo "$ 1 hello"

სკრიპტის შენახვა CTRL და O- ის დაჭერით CTRL და X- ის დაჭერით

ქვემოთ მოყვანილი სკრიპტის გაშვება (შეცვალეთ ჩემი სახელი თქვენი):

sh greetme.sh gary newell

როდესაც სკრიპტს ატარებთ, ის უბრალოდ მიესალმება "გილოცავთ" (ან იმედია "გამარჯობა" და რასაც თქვენი სახელია.

1-ის სიმბოლოს შემდეგ, ძირითადად, ექოს ბრძანებაზე მიუთითებს, გამოიყენეთ პირველი პარამეტრი. $ 2-ით $ 2-ის ჩანაცვლება მაშინ, როდესაც "hello newell" (ან თქვენი გვარი არის).

სხვათა შორის, თუ შეიცვალა $ 2 ერთად $ 3 და გაიქცა სკრიპტი მხოლოდ 2 პარამეტრების გამომავალი უბრალოდ იქნება "გამარჯობა".

შესაძლებელია გამოჩნდეს და გაუმკლავდეს პარამეტრების რიცხვი, რომლებიც რეალურად შედიან და მოგვიანებით გაკვეთილები მეჩვენება, თუ როგორ უნდა გამოიყენოთ პარამეტრი რაოდენობა დადასტურება მიზნებისათვის.

გამოაქვეყნონ პარამეტრების რიცხვი გახსნილი greetme.sh script (nano greetme.sh) და შეცვალეთ ტექსტი შემდეგი რედაქციით:

#! / bin / bash echo "თქვენ შევიდა $ # სახელები" echo "hello $ @"

დააჭირეთ CTRL და O გადარჩენა სკრიპტის და CTRL და X გასასვლელად ნანო.

მე -2 ხაზის # $ აჩვენებს პარამეტრების რაოდენობას.

ჯერჯერობით ყველა ეს იყო რომანი, მაგრამ არა ძალიან სასარგებლო. ვის სჭირდება სკრიპტი, რომელიც უბრალოდ "მიესალმება"?

რეალური გამოყენების გამონათქვამები არის მომხმარებლისთვის verbose და მნიშვნელოვანი გამომავალი. თუ თქვენ შეგიძლიათ წარმოიდგინოთ, რომ გინდა რაღაც რთული, რომელიც მოიცავს სერიოზულ რაოდენობას crunching და ფაილის / საქაღალდე მანიპულირება სასარგებლო იქნება ჩვენების მომხმარებლის რა ხდება ყოველი ნაბიჯი გზა.

ამის საპირისპიროდ, შეყვანის პარამეტრების შექმნა თქვენი სკრიპტის ინტერაქტიული. შეყვანის პარამეტრების გარეშე საჭიროა ათეულობით სკრიპტი, რაც ძალიან მსგავსია, მაგრამ ოდნავ განსხვავებული სახელები.

ყველა ამ გათვალისწინებით, არსებობს სხვა სასარგებლო შეყვანის პარამეტრები, რომ ეს არის კარგი იდეა ვიცი და მე შევა მათ ყველა ერთი კოდი snippet.

გახსენით თქვენი greetme.sh სკრიპტი და შეცვალეთ იგი შემდეგნაირად:

#! / bin / bash echo "ფაილის სახელი: $ 0" ეხო "პროცესი ID: $$" echo "---------------------------- --- "echo" თქვენ შევიდა $ # სახელები "echo" hello $ @ "

დააჭირეთ CTRL და O ფაილის შენახვა და CTRL და X გასასვლელად.

ახლა სკრიპტის გაშვება (შეცვალეთ თქვენი სახელით).

sh greetme.sh

ამჯერად სცენარი აჩვენებს შემდეგს:

ფაილის სახელი: greetme.sh პროცესი ID: 18595 ------------------------------ შევიდნენ 2 სახელები

სკრიპტის პირველი ხაზის $ 0 აჩვენებს სკრიპტის სახელს. გაითვალისწინეთ, რომ ეს არის დოლარის ნულოვანი და არა დოლარი.

მეორე ხაზის $$ აჩვენებს სკრიპტის პროცესის id თქვენი გაშვებით. რატომ არის ეს სასარგებლო? თუ ფანჯარაში გაშვებულია სკრიპტი, შეგიძლიათ გააუქმოთ იგი CTRL- სა და C- ს მიერ დაჭერით. თუ სკრიპტი გაატარეთ ფონზე და დაიწყო ხომალდი და აკეთებს იგივეს, რაც თქვენს სისტემას მიაყენებს ზიანს მოკვლას.

სკრიპტის მოკვლა სკრიპტის პროცესი ID გჭირდებათ. კარგი იქნებოდა, თუ სკრიპტი პროცესის იდენტიფიკაციის ნაწილი იყო, მისი გამომუშავების ნაწილი. ( დაახლოებით ps და კლავს ბრძანებები )

საბოლოოდ, სანამ ამ თემას დავასრულებდი, მინდოდა განვიხილოთ, თუ სად წავიდა გამომავალი. სკრიპტის გაშვება ყოველ ჯერზე გამოდის ეკრანზე.

ეს არის საკმაოდ გავრცელებული სკრიპტის გამომავალი უნდა ჩაიწეროს გამომავალი ფაილი. ამისათვის აწარმოე სკრიპტი შემდეგი რედაქციით:

shree greetme.sh gary> greetme.log

> სიმბოლო ამ ბრძანებით გამოდის ტექსტს "hello gary" - ში, რომელსაც უწოდებენ greetme.log.

სიმბოლოსთან ერთად სკრიპტის გაშვება ყოველ ჯერზე გადაწერეთ გამომავალი ფაილის შინაარსი. თუ თქვენ გსურთ შეიტანოთ ფაილი შეიტანეთ>>.

შემაჯამებელი

ახლა თქვენ შეძლებთ ეკრანზე ტექსტის დაწერა და შეყვანის პარამეტრების მიღება.