Praktiski intervijas jautājumi un atbildes uz Linux Shell skriptiem


Ar milzīgu atsaucību mēs saņemam Interviju sērijas rakstus, pirmos šāda veida rakstus jebkurā Linux vietnes vietnē Patīk, Atsauksmes komentāros, kā arī personīgajā e-pasta adresē, liekot mums pāriet no viena raksta uz nākamo rakstu.

Šeit ir saite uz interviju sērijas rakstiem, kas jau ir publicēti vietnē linux-console.net, kur mēs esam apskatījuši daudzas tēmas, piemēram, FTP, MySQL, Apache, Scripting, Linux komandas utt.

Turpinot iepriekš minēto sēriju, mēs nākam ar vēl 5 brīnišķīgiem Linux intervijas jautājumiem un viņu atbildēm. Lai tas būtu veiksmīgs, vienmēr ir nepieciešams jūsu (The linux-console.net lasītāju un bieži apmeklētāju) atbalsts.

Tagad izveidojiet failu ar nosaukumu “userstats.sh” un pievienojiet tam šādu kodu.

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

Novietojiet izpildes atļauju un palaidiet skriptu, kā parādīts zemāk.

# 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

Atkal izveidojiet failu ar nosaukumu “two-numbers.sh” un pievienojiet tam šādu saturu.

#!/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.

Iestatiet faila izpildītāja atļauju un palaidiet skriptu, kā parādīts zemāk.

# chmod 755 two-numbers.sh

1. nosacījums: palaižot skriptu, neievadot divus skaitļus kā komandrindas argumentu, jūs iegūsiet šādu izvadi.

# ./two-numbers.sh

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

2. nosacījums: Kad cipari tiek ievadīti kā komandrindas arguments, jūs iegūsiet rezultātu, kā parādīts.

$ ./two-numbers.sh 4 5 

Sum of 4 and 5 is 9

Tādējādi iepriekšējais čaulas skripts atbilst nosacījumam, kas ieteikts jautājumā.

  1. 1. Ļaujiet ievades skaitlim = n
  2. 2. Iestatiet rev = 0, sd = 0 (reversais un vienciparu skaitlis iestatīts uz 0)
  3. 3. n% 10, atradīs un piešķirs vienu kreiso ciparu
  4. 4. reversais skaitlis tiek ģenerēts kā rev * 10 + sd
  5. 5. Samaziniet ievades numuru (n) par 1.
  6. 6. ja n> 0, tad pārejiet uz 3. soli, pārejiet uz setp 7
  7. 7. Drukāt rev.

Tagad atkal izveidojiet failu ar nosaukumu “numbers.sh” un pievienojiet to tālāk norādītajam kodam.

#!/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"

Piešķiriet faila izpildes atļauju un palaidiet skriptu, kā parādīts zemāk.

# chmod 755 numbers.h

1. nosacījums: ja ievade nav norādīta kā komandrindas arguments, tiks parādīta šāda izeja.

./numbers.sh

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

2. nosacījums: kad ievade tika norādīta kā komandrindas arguments.

$ ./numbers.sh 10572 

Reverse number is 27501

Iepriekš minētais skripts darbojās perfekti, un rezultāts bija tieši tas, kas mums vajadzīgs.

Piemēram, palaidiet šo komandu, lai reāllaikā aprēķinātu skaitļus, izmantojot komandu bc, kā parādīts.

$ echo 7.56 + 2.453 | bc

10.013
# pi 100 

3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067

Skaidrs! Mums jābūt instalētai pakotnei “pi”. Vienkārši izdariet apt vai yum, lai iegūtu nepieciešamo pakotni, lai instalētu “pi” jūsu izmantotajā izplatīšanā.

Tas pagaidām ir viss. Ļoti drīz būšu šeit atkal ar vēl vienu interesantu rakstu. Līdz tam sekojiet līdzi jaunumiem un sazinieties ar linux-console.net. Neaizmirstiet sniegt mums vērtīgas atsauksmes komentāru sadaļā zemāk.