2012-01-02

ලිනක්ස් Shell Programming පාඩම-කොටස 09




  1. Shell ගණිත කර්ම

                             අපි දැන් බලමු කොහොමද මේ shell Programming වලදි ගණිත කර්ම වැඩ කරගන්නෙ කියල . +,-,*,/,% වගේ වැඩ වලට එකම වගේ ක්‍රමයක් තමයි තියෙන්නෙ දැන් බලන්නෙකො ඒක.

expr value1 math-operator value2

උදා- expr 5 + 6

operator එක දෙපැත්තෙ මේවගේ space දෙකක් තියෙන්න ඕන නැත්තම් වැරදියි

5 + 6 

අනිත් හැම එකක්ම වගේ ඔහොම තමයි.බලන්නකො උදාහරණ ටික.

           1එකතු කිරීම
                        expr 12 + 3
    1. අඩු කිරීම
        expr 6 – 1
    1. බෙදීම
        expr 10 / 2
    1. ප්‍රතිශත
        expr 20 % 3
මේකෙ උත්තරය 2 එහෙම වෙන්නෙ විස්ස 3න් බෙදුවහම 18 ඉතුරු 2.
    1. වැඩි කිරීම
        මෙතනදි නම් පෙඩි වෙනසක් තියෙනව අපි සාමාන්‍යයෙන් වැඩි කරනකොට භාවිතා කරන්නෙ * ලකුණනෙ ඒත් shell Programming වලදි වැඩි කිරීම් සදහා භාවිතා කරන්නෙ \* කියන ලකුණ .
expr 2 \* 4

echo එකත් එක්ක බලමු දැන්.

මෙන්න මෙහෙම ලිව්වහම මොකක් වෙයි ද ?
echo “expr 6 + 2”
echo 'expr 6 + 2'
කරල බලන්න වැඩ කරන්නෙ නම් නෑ. ඒත් මෙහෙම කරොත් නම් හරි
echo `expr 6 + 2 `
මොකද්ද වෙනස සමහර විට එක පාරටම පේන එකක් නෑ expr 6 + 2 දෙපැත්තෙ තියෙන්නෙ Single quotes (' ') නෙවෙයි. Back quote (` ` ) කියන ජාතිය.(ඒව තියෙන්නෙ keybord එකේ escape key එකට පහලින් tab key එකට උඩින් ~ තියෙන key එකේ

  1. Quotes පිළිබඳ

      quotes ඒ කියන්නෙ මෙන්න මේව " , ' , ` ගැන තමයි දැන අපි කතා කරන්න හදන්නෙ.

    1. Double Quotes (“ ” ) -  “My name is kamal”
                        double quotes ඇතුලෙ ලියන ඒව ගැන කිව්වොත් කම්පුටරේ ඒව තේරුම් ගන්නෙ අර්ථයක් නැති දෙයක් විදියට.ඒවයින් ප්‍රෝග්‍රෑම් එකට කිසිම බලපෑමක් වෙන්නෙ නෑ.

      1. Single quotes(' ') - 'My name is kamal
               මේකත් කලින් එක වගේ තමයි.
      1. Back quote (` `) -   “Date is `date` ”
                මේව ඇතුලෙ ලියන්නෙ execute වෙන commands
 උදාහරණ
echo “i have a computer”
echo 'my name is mad'
echo “this months calendar `cal` ”

18.The read Statement

අපි කම්පියුටර් එකේ කීබෝඩ් එකෙන් ඇතුලත් කරන දත්තයක් වේරියබල් එකකට save කර ගන්න විදිය තමයි දැන් බලන්නෙ. ඔයාලත් එහෙම අවස්ථා දැකල ඇති terminal එක use කරනකොට user name , password ඇතුලු කරන්න තියෙන අවස්තාවත් මෙහෙම එකක්.
මුලුන්ම මේ පොඩි වැඩේ කරල බලන්න.ටර්මිනල් එකේ මෙහෙම ටයිප් කරල enter key එක ඔබන්න.
read myinput


ඔයාලට පේනව නේද කර්සර් එක බිලින්ක් වෙවී තියෙනව කියල ඊලඟට මොකක් හරි වචනයක් type කරල එන්ටර් කරහම සුපුරුදු විදියට කර්සර් එක එනව. දැන් echo command එක use කරල myinput කියන UDV එක ප්‍රින්ට් කරල බලන්න එතකොට ඔයාට දකින්න ලැබෙයි ඔයා ඉන්පුට් කරපු අගය තමයි ආයෙ ප්‍රින්ට් වෙලා තියෙන්නෙ කියල.
Read කියන එකෙන් තමයි මේ ඉන්පුට් කරන values අල්ලගන්නෙ අපි දැන් මේ සම්බන්ධයෙන් පොඩි උදාහරණයක් බලමු.
ඔයාලත් මේ shell script එක ලියල රන් කරල බලන්න.
####################################################


$ gedit my
#
# Hi this is my input test Programm
#
clear
echo "Please Enter Your Name"
read myinput
echo " your input is :-$myinput"


###################################################
2.
####################################################


$ gedit my
#
# Hi this is my Simple calculator
#
clear
echo "Please Enter Your First Value"
read myinput1


echo "Please Enter Your second Value"
read myinput2


echo "your Total Value is ` expr $myinput1 + $myinput2 `"


###################################################
මතකනෙ මේව රන් කරන්න කලින් chmod වලින් මොඩ් කරල ඉන්න ඔන හරිද ?

Post a Comment