Tambayoyin Tambayoyi da Amsoshi na Hira masu Aiki akan Rubutun Shell na Linux


Tare da babban martanin da muke samu akan labaran Jerin Tambayoyi, irin sa na farko akan kowane gidan yanar gizo na Linux Yadda ake so ta hanyar Likes, Feedbacks a comment da kuma kan Adireshin Imel na sirri yana sa mu ci gaba daga labarin zuwa na gaba. labarin.

Anan shine hanyar haɗin kai zuwa jerin labaran Tambayoyi da aka riga aka buga akan linux-console.net, inda muka rufe batutuwa da yawa kamar, FTP, MySQL, Apache, Rubutu, Dokokin Linux, da sauransu.

Ci gaba da jerin abubuwan da ke sama a nan muna zuwa tare da wasu 5 ban mamaki Tambayoyin Tambayoyi na Linux da amsar su. Ana buƙatar tallafin ku (Masu Karatun linux-console.net da Maziyarta akai-akai) don samun nasara.

Yanzu ƙirƙirar fayil mai suna 'userstats.sh'kuma ƙara lambar mai zuwa gare shi.

#!/bin/bash 
echo "Hello, $LOGNAME" 
echo "Current date is `date`" 
echo "User is `who i am`" 
echo "Current directory `pwd`"

Sanya izini kuma gudanar da rubutun kamar yadda aka nuna a ƙasa.

# chmod 755 userstats.sh 
# ./userstats.sh
Hello, avi 
Current date is Sat Jun  7 13:05:29 IST 2014 
User is avi      pts/0        2014-06-07 11:59 (:0) 
Current directory /home/avi/Desktop

Sake ƙirƙirar fayil mai suna 'biyu-numbers.sh'kuma ƙara abun ciki mai zuwa gareshi.

#!/bin/bash 
# The Shebang

if [ $# -ne 2 ] 
# If two Inputs are not received from Standard Input

then 
# then execute the below statements

    echo "Usage - $0   x    y" 
    # print on standard output, how-to use the script (Usage - ./1.sh   x    y )

    echo "        Where x and y are two nos for which I will print sum" 
    # print on standard output, “Where x and y are two nos for which I will print sum ”

    exit 1 
    # Leave shell in Error Stage and before the task was successfully carried out.

fi 
# End of the if Statement.

    echo "Sum of $1 and $2 is `expr $1 + $2`"
    # If the above condition was false and user Entered two numbers as a command Line Argument,   
       it will show the sum of the entered numbers.

Saita izinin aiwatarwa akan fayil ɗin kuma gudanar da rubutun kamar yadda aka nuna a ƙasa.

# chmod 755 two-numbers.sh

Sharadi na 1: Gudanar da rubutun ba tare da shigar da lambobi biyu azaman hujjar layin umarni ba, zaku sami fitarwa mai zuwa.

# ./two-numbers.sh

Usage - ./two-numbers.sh   x    y 
        Where x and y are two nos for which I will print sum

Sharadi na 2: Lokacin da aka shigar da Lambobi azaman hujjar layin umarni zaku sami sakamako kamar yadda aka nuna.

$ ./two-numbers.sh 4 5 

Sum of 4 and 5 is 9

Don haka rubutun harsashi na sama ya cika yanayin kamar yadda aka ba da shawara a cikin tambaya.

  1. 1. Bari lambar shigarwa = n
  2. 2. Saita rev=0, sd=0 (Juya da lambobi ɗaya saita zuwa 0)
  3. 3. n % 10, zai nemo ya ba da mafi yawan lambobi na hagu guda ɗaya
  4. 4. ana ƙirƙira lambar baya azaman rev * 10 + sd
  5. 5. Rage lambar shigarwa (n) da 1.
  6. 6. idan n > 0, to sai ku je mataki na 3 kuma ku je saitin 7
  7. 7. Buga rev

Yanzu kuma, ƙirƙiri fayil mai suna 'numbers.sh'kuma ƙara lambar da aka ba ta mai zuwa.

#!/bin/bash 
if [ $# -ne 1 ] 
then 
    echo "Usage: $0   number" 
    echo "       I will find reverse of given number" 
    echo "       For eg. $0 0123, I will print 3210" 
    exit 1 
fi 

n=$1 
rev=0 
sd=0 

while [ $n -gt 0 ] 
do 
    sd=`expr $n % 10` 
    rev=`expr $rev \* 10  + $sd` 
    n=`expr $n / 10` 
done 
    echo  "Reverse number is $rev"

Ba da izinin aiwatarwa akan fayil ɗin kuma gudanar da rubutun kamar yadda aka nuna a ƙasa.

# chmod 755 numbers.h

Sharadi na 1: Lokacin da ba a samar da Input azaman hujjar layin umarni ba, zaku sami fitarwa mai zuwa.

./numbers.sh

Usage: ./numbers.sh  number 
       I will find reverse of given number 
       For eg. ./2.sh 123, I will print 321

Sharadi na 2: Lokacin da aka samar da Input azaman Hujjar layin umarni.

$ ./numbers.sh 10572 

Reverse number is 27501

Rubutun da ke sama yayi aiki daidai kuma fitarwa shine kawai abin da muke buƙata.

Misali, gudanar da umarni mai zuwa don ƙididdige lambobi a ainihin lokacin ta amfani da umarnin bc kamar yadda aka nuna.

$ echo 7.56 + 2.453 | bc

10.013
# pi 100 

3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067

Babu shakka! Dole ne mu shigar da kunshin 'pi'. Kawai yi dace ko yum don samun fakitin da ake buƙata don shigar da 'pi' akan rarrabawar da kuke amfani da shi.

Shi ke nan a yanzu. Zan sake kasancewa a nan tare da wani labarin mai ban sha'awa ba da jimawa ba. Har sai a saurara kuma ku haɗa zuwa linux-console.net. Kar ku manta da samar mana da ra'ayi mai mahimmanci a cikin sashin sharhin da ke ƙasa.