GNU/Linux >> Linux Esercitazione >  >> Linux

25 Domande e risposte sull'intervista sugli script della shell di Linux

D:1 Che cos'è Shell Script e perché è richiesto?

Ans:uno script di shell è un file di testo che contiene uno o più comandi. Come amministratore di sistema abbiamo spesso bisogno di emettere un numero di comandi per svolgere le attività quotidiane, possiamo aggiungere tutti questi comandi insieme in un file di testo (Shell Script) per completare le attività di routine quotidiane. In altre parole possiamo shell è richiesto per l'automazione.

D:2 Qual è la shell di accesso predefinita e come modificare la shell di accesso predefinita per un utente specifico?

Ans:In Linux come il sistema operativo "/bin/bash" è la shell di accesso predefinita che viene assegnata durante la creazione dell'utente. Possiamo cambiare la shell predefinita usando il comando "chsh". L'esempio è mostrato di seguito:

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

D:3 Quali sono i diversi tipi di variabili utilizzate in uno script di shell?

Ris:Nello script della shell di Linux possiamo usare due tipi di variabili:

  • Variabili definite dal sistema
  • Variabili definite dall'utente

Le variabili definite dal sistema sono definite o create dal sistema operativo (Linux) stesso. Queste variabili sono generalmente definite in lettere maiuscole e possono essere visualizzate da "set comando ". Per visualizzare il valore delle variabili definite dal sistema utilizzare il comando echo, esempi sono echo $PWD o echo $HOME
Le variabili definite dall'utente vengono create o definite dagli utenti del sistema e i valori delle variabili possono essere visualizzati utilizzando il comando "echo $

D:4 Come reindirizzare sia l'output standard che l'errore standard nella stessa posizione?

Ans:Esistono due metodi per reindirizzare l'output std e l'errore std nella stessa posizione. Questi metodi sono elencati di seguito:

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

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

D:5 Qual è la sintassi di "nested if statement" negli script di shell?

Ans:la sintassi di base è mostrata di seguito:

se [ Condizione ]
allora
comando1
comando2
…..
altro
se [ condizione ]
quindi
comando1
comando2
….
else
comando1
comando2
…..
fi
fi

D:6 Qual è l'uso di "$?" accedere allo script della shell?

Ans:Durante la scrittura di uno script di shell, se vuoi verificare se il comando precedente è stato eseguito correttamente o meno, allora possiamo usare "$?". Usa il comando echo per stampare il valore della variabile '$?'. Questa variabile viene generalmente utilizzata nell'istruzione if per verificare lo stato di uscita del comando precedente. L'esempio di base è mostrato di seguito:

[email protetta]:~# ls /usr/bin/shar
/usr/bin/shar
[email protetta]:~# echo $ ?
0

Se lo stato di uscita è 0 , il comando viene eseguito correttamente

[email protetta]:~# ls /usr/bin/share

ls:impossibile accedere a /usr/bin/share:nessun file o directory di questo tipo
[email protetta]:~# echo $?
2

Se lo stato di uscita è diverso da 0, possiamo dire che il comando non è stato eseguito correttamente.

D:7 Come confrontare i numeri negli script della shell di Linux?

Ans:possiamo confrontare i numeri nello script della shell utilizzando parametri come '-gt' (maggiore di), '-eq' (uguale a) e  '-lt' ( minore di) nella dichiarazione if. L'esempio è mostrato di seguito:

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

if [ $x -gt $y ]
allora
echo “x è maggiore di y”
else
echo “ y è maggiore di x”
fi

D:8 A cosa serve il comando break?

Ans:Il comando break è un modo semplice per uscire da un ciclo in corso. Possiamo usare il comando break per uscire da qualsiasi ciclo, inclusi i cicli while e until.

D:9 Qual è l'uso del comando continue negli script di shell?

Ans Il comando continue è identico al comando break tranne per il fatto che provoca l'uscita dell'iterazione attuale del ciclo, invece dell'intero ciclo. Il comando Continua è utile in alcuni scenari in cui si è verificato un errore ma desideriamo comunque eseguire i comandi successivi del ciclo.

D:10 Dimmi la sintassi di "Case statement" nello scripting della shell di Linux?

Ris:La sintassi di base è mostrata di seguito:

case word in
value1)
command1
command2
…..
last_command
!!
valore2)
comando1
comando2
……
last_command
;;
esac

D:11 Qual è la sintassi di base del ciclo while negli script di shell?

Ans:come il ciclo for, il ciclo while ripete il suo blocco di comandi un certo numero di volte. A differenza del ciclo for, tuttavia, il ciclo while itera finché la sua condizione while non è più vera. La sintassi di base è :

mentre [ test_condition ]
do
comandi…
fatto

D:12 Come rendere eseguibile uno script di shell?

Ans:Usando il comando chmod possiamo rendere eseguibile uno script di shell. L'esempio è mostrato di seguito:

# chmod a+x myscript.sh

D:13 Qual è l'uso di "#!/bin/bash"?

Ans:#!/bin/bash è il primo di uno script di shell, noto come shebang, dove il simbolo # è chiamato hash e '!' è chiamato bang. Mostra quel comando da eseguire tramite /bin/bash.

D:14 Qual è la sintassi del ciclo for nello script della shell?

Risposta:la sintassi di base del ciclo for è riportata di seguito:

per le variabili in list_of_items
do
command1
command2
….
last_command
done

D:15 Come eseguire il debug di uno script di shell?

Ans:Uno script di shell può essere sottoposto a debug se eseguiamo lo script con l'opzione '-x' ( sh -x myscript.sh). Un altro modo per eseguire il debug di uno script di shell è utilizzare l'opzione '-nv' ( sh -nv myscript.sh).

D:16 Come confrontare le stringhe nello script della shell?

Ans:il comando test viene utilizzato per confrontare le stringhe di testo. Il comando test confronta le stringhe di testo confrontando ogni carattere in ogni stringa.

D:17 Quali sono le variabili speciali impostate dalla shell Bourne per gli argomenti della riga di comando?

Ris:La tabella seguente elenca le variabili speciali impostate dalla shell Bourne per gli argomenti della riga di comando.

D:18 Come testare i file in uno script di shell bash?

Ans:il comando test viene utilizzato per eseguire diversi test sui file. I test di base sono elencati di seguito:

D:19 Come inserire commenti nello script della shell bash?

Ris:I commenti sono i messaggi a te stesso e agli altri utenti che descrivono cosa dovrebbe fare uno script e come funziona. Per inserire commenti nello script, inizia ogni riga di commento con un cancelletto (#) . L'esempio è mostrato di seguito:

#!/bin/bash
# Questo è un comando
echo "Ho effettuato l'accesso come $USER"

D:20 Come ottenere input dal terminale per lo script della shell?

Ans:il comando 'read' legge i dati dal terminale (usando la tastiera). Il comando read prende tutto ciò che l'utente digita e inserisce il testo nella variabile nominata. L'esempio è mostrato di seguito:

# vi /tmp/test.sh

#!/bin/bash
echo 'Per favore inserisci il tuo nome'
leggi il nome
echo "My Name is $name"

# ./test.sh
Inserisci il tuo nome
LinuxTechi
Mi chiamo LinuxTechi

D:21 Come annullare l'impostazione o l'assegnazione di variabili in Linux?

Ans:il comando 'unset' viene utilizzato per annullare l'assegnazione o l'annullamento dell'impostazione di una variabile. La sintassi è mostrata di seguito:

# unset

D:22 Come eseguire operazioni aritmetiche in Linux ?

Ans:ci sono due modi per eseguire operazioni aritmetiche:

1. Utilizzo del comando expr (# expr 5 + 2 )
2. utilizzando il simbolo del dollaro e le parentesi quadre ( $[ operazione ] )

Esempio:test=$[16 + 4]; test=$[16 + 4]

D:23 Sintassi di base dell'istruzione do-while ?

Ris:l'istruzione do-while è simile all'istruzione while ma esegue le istruzioni prima di controllare l'istruzione della condizione. Il seguente è il formato per l'istruzione do-while:

fai
{
dichiarazioni
} while (condizione)

D:24 Come definire le funzioni negli script di shell?

Ans:una funzione è semplicemente un blocco di codice con un nome. Quando diamo un nome a un blocco di codice, possiamo quindi chiamare quel nome nel nostro script e quel blocco verrà eseguito. L'esempio è mostrato di seguito:

$ diskusage () { df -h; }

D:25 Come utilizzare bc (calcolatore bash) in uno script di shell bash?

Ans:usa la sintassi seguente per usare bc nello script della shell.

variable=`echo “opzioni; espressione” | bc`

Leggi anche :20 domande e risposte per l'intervista ai comandi Linux


Linux
  1. 40 Domande di intervista su Linux per matricole Parte-2

  2. 30 Domande e risposte per l'intervista LAMP(Linux, Apache, MySQL e PHP).

  3. Le 25 migliori domande e risposte per le interviste su Linux

  4. 20 Domande e risposte sull'intervista Postfix

  5. BIND – Domande e risposte sull'intervista al server DNS

20 Domande e risposte sull'intervista a Red Hat Satellite Server

Comando sorgente in Linux

Comando sorgente in Linux

Come ordinare i file in Linux (GUI e Shell)

Spiegazione del comando sorgente su Linux

Le 50 domande e risposte di interviste su Linux più frequenti