GNU/Linux >> Znalost Linux >  >> Linux

25 Otázky a odpovědi k rozhovoru se skriptováním Linux Shell

O:1 Co je Shell Script a proč je vyžadován?

Odp.:Shell Script je textový soubor, který obsahuje jeden nebo více příkazů. Jako správce systému často potřebujeme zadávat řadu příkazů, abychom mohli provádět každodenní úkoly. Tyto všechny příkazy můžeme přidat dohromady v textovém souboru (Shell Script) a dokončit tak každodenní rutinní úkol. Jinými slovy, we can shell je vyžadován pro automatizaci.

O:2 Co je výchozí přihlašovací prostředí a jak změnit výchozí přihlašovací prostředí pro konkrétního uživatele?

Odp.:V operačním systému typu Linux je „/bin/bash“ výchozí přihlašovací shell, který je přiřazen při vytváření uživatele. Výchozí shell můžeme změnit pomocí příkazu „chsh“. Příklad je uveden níže:

# chsh -s
# chsh linuxtechi -s /bin/sh

O:3 Jaké jsou různé typy proměnných používaných ve skriptu shellu?

Odpověď:V linuxovém shell skriptu můžeme použít dva typy proměnných:

  • Systémem definované proměnné
  • Uživatelem definované proměnné

Systémem definované proměnné jsou definovány nebo vytvářeny samotným operačním systémem (Linux). Tyto proměnné jsou obecně definovány velkými písmeny a lze je zobrazit pomocí „set “příkaz. Pro zobrazení hodnoty proměnných definovaných systémem použijte příkaz echo, příklady jsou  echo $PWD nebo echo $HOME
Uživatelsky definované proměnné jsou vytvářeny nebo definovány uživateli systému a hodnoty proměnných lze zobrazit pomocí příkazu „echo $

O:4 Jak přesměrovat standardní výstup i standardní chybu do stejného umístění?

Odp.:Existují dva způsoby přesměrování standardního výstupu a standardní chyby do stejného umístění. Tyto metody jsou uvedeny níže:

Metoda 1)  2>&1 (# ls /usr/share/doc> out.txt 2>&1 )

Metoda 2)  &> (# ls /usr/share/doc &> out.txt )

O:5 Jaká je syntaxe „vnořeného příkazu if“ ve skriptování shellu?

Odp.:Základní syntaxe je uvedena níže:

if [ Podmínka ]
then
příkaz1
příkaz2
…..
else
if [ podmínka ]
pak
příkaz1
příkaz2
….
jinak
příkaz1
příkaz2
…..
fi
fi

O:6 K čemu slouží „$?“ přihlašovací skript shellu ?

Odp.:Pokud chcete při psaní skriptu shellu zkontrolovat, zda byl předchozí příkaz proveden úspěšně nebo ne, můžeme použít „$?“. Pomocí příkazu echo vytiskněte hodnotu proměnné ‚$?‘. Tato proměnná se obecně používá v příkazu if ke kontrole stavu ukončení předchozího příkazu. Základní příklad je uveden níže:

[e-mail chráněný]:~# ls /usr/bin/shar
/usr/bin/shar
[chráněný e-mailem]:~# echo $ ?
0

Pokud je stav ukončení 0 , příkaz je úspěšně proveden

[e-mail chráněn]:~# ls /usr/bin/share

ls:nelze získat přístup k /usr/bin/share:Žádný takový soubor nebo adresář
[chráněno e-mailem]:~# echo $?
2

Pokud je stav ukončení jiný než 0, můžeme říci, že příkaz nebyl úspěšně proveden.

O:7 Jak porovnávat čísla v Linux shell Scripting?

Odp.:Čísla ve skriptu shellu můžeme porovnat pomocí parametrů jako '-gt' (větší než), '-eq' (rovná se) a  '-lt' ( menší než) v příkazu if. Příklad je uveden níže:

#!/bin/bash
x=10
y=20

if [ $x -gt $y ]
pak
echo „x je větší než y“
else
echo “ y je větší než x”
fi

O:8 K čemu slouží příkaz break?

Odp.:Příkaz break je jednoduchý způsob, jak uniknout z probíhající smyčky. Můžeme použít příkaz break k opuštění jakékoli smyčky, včetně smyček while a till.

O:9 Jaké je použití příkazu continue ve skriptování shellu?

Ans Příkaz continue je identický s příkazem break s tím rozdílem, že způsobí ukončení současné iterace smyčky namísto celé smyčky. Příkaz Continue je užitečný v některých situacích, kdy došlo k chybě, ale přesto chceme provést další příkazy smyčky.

O:10 Řekněte mi syntaxi „příkazu Case“ ve skriptování prostředí Linux?

Odp.:Základní syntaxe je uvedena níže:

velká a malá písmena v
hodnota1)
příkaz1
příkaz2
…..
last_command
!!
hodnota2)
příkaz1
příkaz2
……
poslední_příkaz
;;
esac

O:11 Jaká je základní syntaxe smyčky while ve skriptování shellu?

Odp.:Stejně jako smyčka for, i smyčka while několikrát opakuje svůj blok příkazů. Na rozdíl od smyčky for však smyčka while iteruje, dokud její podmínka while přestane platit. Základní syntaxe je:

zatímco [ test_condition ]
provádějte
příkazy…
hotovo

O:12 Jak udělat skript shellu spustitelný?

Odp.:Pomocí příkazu chmod můžeme vytvořit spustitelný skript shellu. Příklad je uveden níže:

# chmod a+x myscript.sh

O:13 Jaké je použití „#!/bin/bash“?

Odpověď:#!/bin/bash je první skript shellu, známý jako shebang , kde symbol # se nazývá hash a znak „!“ se nazývá bang. Ukazuje, že příkaz má být proveden přes /bin/bash.

O:14 Jaká je syntaxe smyčky for ve skriptu shellu?

Odpověď:Základní syntaxe smyčky for je uvedena níže:

pro proměnné v seznamu_položek
do
příkaz1
příkaz2
….
last_command
hotovo

O:15 Jak ladit skript shellu?

Odp.:Shell skript lze ladit, pokud skript spustíme s volbou „-x“ ( sh -x myscript.sh). Dalším způsobem, jak ladit skript shellu, je použití volby „-nv“ ( sh -nv myscript.sh).

O:16 Jak porovnat řetězce ve skriptu shellu?

Příkaz Ans:test se používá k porovnání textových řetězců. Příkaz test porovnává textové řetězce porovnáním každého znaku v každém řetězci.

O:17 Jaké jsou speciální proměnné nastavené Bourne shellem pro argumenty příkazového řádku?

Odp.:Následující tabulka uvádí speciální proměnné nastavené Bourne shellem pro argumenty příkazového řádku.

O:18 Jak testovat soubory ve skriptu bash shell?

Ans:Příkaz test se používá k provedení různých testů souborů. Základní testy jsou uvedeny níže:

O:19 Jak vložit komentáře do skriptu bash shell?

Odp.:Komentáře jsou zprávy pro vás a pro ostatní uživatele, které popisují, co má skript dělat a jak funguje. Chcete-li do skriptu vložit komentáře, začněte každý řádek komentáře znakem hash (#) . Příklad je uveden níže:

#!/bin/bash
# Toto je příkaz
echo „Jsem přihlášen jako $USER“

O:20 Jak získat vstup z terminálu pro skript shellu?

Odpověď:Příkaz „read“ načte data z terminálu (pomocí klávesnice). Příkaz read převezme vše, co uživatel zadá, a umístí text do vámi jmenované proměnné. Příklad je uveden níže:

# vi /tmp/test.sh

#!/bin/bash
echo 'Zadejte prosím své jméno'
číst jméno
echo „Mé jméno je $name“

# ./test.sh
Zadejte prosím své jméno
LinuxTechi
Jmenuji se LinuxTechi

O:21 Jak zrušit nastavení nebo přiřazení proměnných v Linuxu?

Odp.:Příkaz „unset“ se používá ke zrušení přiřazení nebo zrušení nastavení proměnné. Syntaxe je uvedena níže:

# unset

O:22 Jak provádět aritmetické operace v Linuxu ?

Odpověď:Existují dva způsoby, jak provádět aritmetické operace:

1. Pomocí příkazu expr (# expr 5 + 2 )
2. pomocí znaku dolaru a hranatých závorek ( $[ operace ] )

Příklad :test=$[16 + 4]; test=$[16 + 4]

O:23 Základní syntaxe příkazu do-while ?

Odp.:Příkaz do-while je podobný příkazu while, ale provede příkazy před kontrolou příkazu podmínky. Níže je uveden formát příkazu do-while:

proveďte
{
příkazy
} while (condition)

O:24 Jak definovat funkce ve skriptování shellu?

Odp.:Funkce je jednoduše blok kódu s názvem. Když dáme název bloku kódu, můžeme pak zavolat tento název v našem skriptu a tento blok bude proveden. Příklad je uveden níže:

$ diskusage () { df -h; }

O:25 Jak používat bc (kalkulátor bash) ve skriptu bash shell?

Odp.:Pro použití bc ve skriptu shellu použijte níže uvedenou syntaxi.

variable=`echo “options; výraz” | bc`

Přečtěte si také :20 otázek a odpovědí k rozhovoru s příkazy Linux


Linux
  1. 30 nejlepších otázek a odpovědí v rámci rozhovoru s OpenStack

  2. 40 Linuxových otázek k pohovoru pro Freshers Část-2

  3. Skriptování Linuxu:hexadecimální číslo na binární řetězec

  1. 30 Otázky a odpovědi k rozhovoru LAMP (Linux, Apache, MySQL a PHP).

  2. 25 nejčastějších otázek a odpovědí v rozhovoru pro Linux

  3. 20 Postfix Interview Otázky a odpovědi

  1. BIND – DNS Server Interview Otázky a odpovědi

  2. 25 nejčastějších otázek k pohovoru o Linuxu

  3. Linuxové příkazy:jobs, bg a fg