Vprašanja in odgovori v zvezi s praktičnimi intervjuji o skriptu Linux Shell


Z izjemnim odzivom, ki ga dobimo na člankih Interview Series, so prvi tovrstni na katerem koli spletnem mestu z navodili za Linux v obliki všečkov, povratnih informacij v komentarjih in osebnih e-poštnih naslovov, ki nas vodijo od enega članka do drugega Članek.

Tu je povezava do člankov iz serije Interview, ki so že objavljeni na linux-console.net, kjer smo zajeli veliko tem, FTP, MySQL, Apache, Scripting, Linux Commands itd.

Če nadaljujemo z zgornjo serijo, prihajamo s še petimi čudovitimi vprašanji za intervju z Linuxom in njihovimi odgovori. Za uspeh je vedno potrebna vaša (bralci in pogosti obiskovalci linux-console.net).

Zdaj ustvarite datoteko z imenom "userstats.sh" in ji dodajte naslednjo kodo.

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

Postavite dovoljenje za izvajanje in zaženite skript, kot je prikazano spodaj.

# 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

Ponovno ustvarite datoteko z imenom "two-numbers.sh" in ji dodajte naslednjo vsebino.

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

V datoteki nastavite izvršilno dovoljenje in zaženite skript, kot je prikazano spodaj.

# chmod 755 two-numbers.sh

Pogoj 1: Če zaženete skript brez vnosa dveh številk kot argument ukazne vrstice, boste dobili naslednji izhod.

# ./two-numbers.sh

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

Pogoj 2: Ko so številke vnesene kot argument ukazne vrstice, boste dobili rezultat, kot je prikazano.

$ ./two-numbers.sh 4 5 

Sum of 4 and 5 is 9

Zato zgornji skript lupine izpolnjuje pogoj, kot je predlagano v vprašanju.

  1. 1. Naj bo vhodna številka = n
  2. 2. Nastavite rev = 0, sd = 0 (Povratna in enojna digita je nastavljena na 0)
  3. 3. n% 10, bo našel in dal eno levo najbolj števko
  4. 4. povratna številka se ustvari kot rev * 10 + sd
  5. 5. Zmanjšajte vhodno številko (n) za 1.
  6. 6. če je n> 0, pojdite na 3. korak, drugače pa na 7. nastavitev
  7. 7. Natisni rev

Zdaj znova ustvarite datoteko z imenom 'numbers.sh' in ji dodajte naslednjo kodo.

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

Podelite dovoljenje za izvajanje datoteke in zaženite skript, kot je prikazano spodaj.

# chmod 755 numbers.h

Pogoj 1: Če vnos ni naveden kot argument ukazne vrstice, boste dobili naslednji izhod.

./numbers.sh

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

Pogoj 2: Ko je bil vnos naveden kot argument ukazne vrstice.

$ ./numbers.sh 10572 

Reverse number is 27501

Zgornji skript je deloval popolnoma in rezultat je bil tisto, kar smo potrebovali.

Na primer, zaženite naslednji ukaz za izračun številk v realnem času z uporabo ukaza bc, kot je prikazano.

$ echo 7.56 + 2.453 | bc

10.013
# pi 100 

3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067

Očitno! Nameščen mora biti paket 'pi'. Dovolj je, da dobite potreben paket za namestitev "pi" na distribucijo, ki jo uporabljate.

To je vse za zdaj. Kmalu bom spet tu z drugim zanimivim člankom. Do takrat ostanite z nami in povezani s linux-console.net. Ne pozabite nam posredovati dragocenih povratnih informacij v spodnjem oddelku za komentarje.