Funding for 'IT Lab' Project, Phase 1: Progress of sticker sales. Purchase a sticker to help us reach our target.Updated: 2010-02-28 11:53
10.7%
Shell Scripting සිංහලෙන්

by Sameera Shaakunthala


ලින්ක්ස් පාරිසරිකය තුළ දී Shell Script සකස් කරගන්නා ආකාරය පිළිබඳ මෙම ලිපි පෙළින් ඉදිරිපත් කෙරේ’ මේ සඳහා ඔබ ලින්ක්ස් විධාන පෙළ අතුරුමුහුණත
(Command line interface - terminal) භාවිත කිරීම පිළිබඳ යම් අත්දැකීමක් ලබාතිබීම ප‍්‍රමාණවත් වේ. මෙම ලිපි පෙළේ පළමු කොටස diGIT පසුගිය කළාපයේ පළ විය.

 විචල්‍ය (Variables)

Shell Script එකක් යනු එක්තරා ආකාරයක පරිගණක ක්‍රමලේඛයකි. Shell Script භාවිතයේදී පරිගණක ක්‍රමලේඛණයට අදාළ සිද්ධාන්ත ද භාවිතයට ගැනේ. Variables හෙවත් 'විචල්‍ය' පිළිබඳ සිද්ධාන්තය එවැන්නකි.

 විචල්‍යයක් යනු පරිගණක මතකයේ ගබඩා කර ඇති යම් දත්තයක් නිරූපණය කිරීම සඳහා යොදා ගන්නා යම් පෙළ කොටසකි. මෙය බොහෝ දුරට ගණිතයේදී x=5, y=10 යනාදී ආකාරයට විචල්‍යයන් යොදා ගැනීමට සමානය. නමුත් ක්‍රමලේඛණයේදී තනි අක්ෂරයක් වෙනුවට අදාළ විචල්‍යයෙන් නිරූපිත අගයය පිළිබඳ හැඟවෙන වදනක් හෝ වාක්‍යාංශයක් යොදා ගැනේ. එමෙන්ම විචල්‍යයෙන් නිරූපිතය ලෙස සංඛ්‍යාත්මක දත්ත පමණක් නොව පාඨද යෙදේ.

 උදා:

name=”Sameera” #nameවිචල්‍යය, Sameeraවිචල්‍යයේ අගයය

index=5

 පරිගණක ක්‍රමලේඛයක විචල්‍යයන් භාවිතයේදී අදාළ ක්‍රමලේඛය ලියනු ලබන පරිගණක භාෂාව අනුව නියමිත වූ කාරක රීති පවතී. Shell Script ලිවීමේදී ද විචල්‍යයන් භාවිත කිරීමට නියමිත රීතියක් පවතී. මේ පිළිබඳ වැඩි දුර සාකච්ඡා කිරීමට ප්‍රථම අපි තවත් ආදර්ශ shell script දෙකක් අත්හදා බලමු.

 පහත දැක්වෙන shell script එක සකස් කර ධාවනය කරන්න. # සලකුණට පසු දක්වා ඇති පැහැදිළි කිරීම් ඔබේ script එකේ ලිවීම අත්‍යාවශ්‍ය නොවේ.

 vehicle=”Car”   #පරිගණක මතකයේ vehicle නමින් විචල්‍යයක් සාදා එයින් නිරූපිත 'අගය' ලෙස Car යන්න ආදේශ කරයි.

echo $vehicle     #vehicle යන විචල්‍යයේ අගය පරිගණක මතකයෙන් ලබාගෙන එය තිරයේ දර්ශනය කරයි.

vehicle=”Bus”   #vehicle යන විචල්‍යය දැනටමත් පරිගණක මතකයේ පවතින බැවින් එනමින් තවත් විචල්‍යයක් සෑදිය නොහැකිය. නමුත් එම විචල්‍යයයේ අගය වෙනස් කළ හැකිය. මෙම පේළියෙන් සිදු කෙරෙනුයේ එයයි.

echo $vehicle

 පහත දැක්වෙන ආකාරයේ ප්‍රතිදානයක් දැකිය හැකි වනු ඇත.



දැන් දෙවන උදාහරණයත් අත්හදා බලමු
. නව පාඨ ගොනුවක පහත දැක්වෙන script එක සකස් කර ධාවනය කරන්න.

echo “Enter your name:”

read n    #මෙම විධානයෙන් සිදු කෙරෙනුයේ shell එක මගින් පරිශීලක ප්‍රදානය (user input) කියැවීමයි.

echo “Hello, $n!”



විචල්‍ය භාවිතයේ අරමුණ දැන් ඔබට පැහැදිලි වී තිබිය හැකිය. විවිධ ආකාරයේ ප්‍රදානයන් (inputs) අනුව ක්‍රියා කළ හැකි වඩාත් අන්තර්ක්‍රියාකාරී (interactive) script එකක් ලිවීමට විචල්‍ය භාවිතයෙන් හැකි ය.

විචල්‍යය භාවිතයේ රීතීන් (syntax)

  1. Shell script ලිවීමේ දී විචල්‍යයන් සඳහා පහත දැක්වෙන රීතීන් අනුගමනය කළ යුතුය. නැතහොත් ඔබ විසින් ලියනු ලබන script ක්‍රියාත්මක වීමේදී දෝෂ (errors) ඇති විය හැකි ය.
  2. විචල්‍යකට නමක් හා අගයයක් පවතී. විචල්‍යයක් සෑදීමේ දී හා විචල්‍යයකට අගයයක් ආදේශ කිරීමේ දී නම=අගයය යන ආකාරයට භාවිත කළ යුතුය. මෙය ගණිතමය සමීකරණයක් ලෙස නොව පැවරීමක්/ආදේශයක් ලෙස සලකන්න. ගණිතමය සමීකරණ වලදී මෙන් මෙහිදී සමාන ලකුණින් වම්පස හා දකුණු පස මාරු කර ලිවිය නොහැකිය.
  3. විචල්‍යයේ නමත් සමාන ලකුණත් අතර හෝ සමාන ලකුණත් අගයයත් අතර හිස් තැන් තිබිය නොහැකිය. එනම් පහත දක්වා ඇති ආකාර යෙදිය නොහැකිය.

  • x =25
  • x= 25
  • x = 25
  1. විචල්‍යයේ නම ඉංග්‍රීසි අකුරකින් හෝ underscore සලකුණින් (_) ආරම්භ කළ යුතුය. නමුත් underscore සලකුණ පමණක් විචල්‍යයේ නම ලෙස යෙදිය නොහැකිය. එමෙන්ම ?, *,&යනාදී වශයෙන් වෙනත් විරාම ලක්ෂණද භාවිත කළ නොහැකිය.

උදා:

  • _filesize=1024
  • index_no=0


5. විචල්‍යයන් සඳහා යෙදෙන ඉංග‍්‍රීසි අකුරු CAPITAL  simple ද යන්න පිළිබඳ සැලකිල්ලට ගැනේ. (Case sensitivity)  එනම්, number හා Number යනු විචල්‍යයයන් දෙකකි.
6. විචල්‍යයකට සංඛ්‍යාත්මක නොවන, එනම් පාඨයක් අගයය ලෙස අදේශ කිරීමේ දී අදාළ පාඨය උපුටා දැක්විමේ සලකුණු (quotation marks)දෙකක් අතර ලිවීම වඩාත් සුදුසු ය. අදාළ පාඨයේ හිස්තැන් (white spaces)  තිබේ නම්, එය අනිවාර්ය ය.

 • a =Hello     # නිවැරදියි.
  a =Hello World # වැරදියි.
 • a ="Hello World"   # නිවැරදියි.  

7. යම් විචල්‍යයක් සඳහා ආදේශිත අගයය නැවත ලබාගැනීමේ දී එම විචල්‍යයෙන් නමට මුලින් $   සළකුණ යොදා ලිවිය යුතු ය. (ඉහත දක්වා ඇති Enter Your Name උදාහරණය බලන්න.)

 Shell  සමඟ භාවිත කළ හැකි විචල්‍යය ප‍්‍රධාව යර්ල දෙකකට බෙදේ. ඒ පද්ධති විචල්‍යය (system variables)  හා පරිශීලක නියම කළ විචල්‍යය (user defined variables)  යි. අප මෙතෙක් සාකච්ඡා කළේ මම පරිශීලක නියම කළ විචල්‍යය පිළිබඳව යි. පද්ධති විචල්‍යය පිළිබඳ අපි diGIT මීළඟ කලාපයෙන් සාකච්ඡා කරමු.

Previous Article

Post new comment

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options