30 script bash Intervista domande e risposte

30 Bash Script Interview Questions



Lo scripting Bash è un linguaggio di programmazione molto utile e potente che viene utilizzato principalmente per automatizzare qualsiasi attività manuale. Una persona in cerca di lavoro che vuole essere un tester di automazione o un programmatore bash deve affrontare alcune domande comuni durante il colloquio. Esistono diversi tipi di script di shell in Linux. Uno degli script di shell più popolari e più utilizzati è Bourne Again Shell o Bash. 30 importanti domande e risposte dell'intervista sul linguaggio di scripting bash sono descritte in questo articolo per prepararsi al lavoro.

#01. Che cos'è lo script bash?

Lo script bash è un linguaggio di programmazione della shell. Generalmente, eseguiamo molti tipi di comandi shell dal terminale digitando ciascun comando separatamente che richiedono tempo e sforzi. Se dobbiamo eseguire nuovamente gli stessi comandi, dobbiamo eseguire nuovamente tutti i comandi dal terminale. Ma usando uno script bash, possiamo memorizzare molte istruzioni di comando della shell in un singolo file bash ed eseguire il file in qualsiasi momento con un singolo comando. Molte attività relative all'amministrazione del sistema, l'installazione del programma, il backup del disco, la valutazione dei registri, ecc. Possono essere eseguite utilizzando lo script bash appropriato.







#02. Quali sono i vantaggi dell'utilizzo degli script bash?

Lo script Bash ha molti vantaggi che sono descritti di seguito:



  • È facile da usare e da imparare.
  • Molte attività manuali che devono essere eseguite frequentemente possono essere eseguite automaticamente scrivendo uno script bash.
  • La sequenza di più comandi di shell può essere eseguita da un singolo comando.
  • Lo script Bash scritto in un sistema operativo Linux può essere facilmente eseguito in un altro sistema operativo Linux. Quindi, è portatile.
  • Il debug in bash è più semplice rispetto ad altri linguaggi di programmazione.
  • La sintassi della riga di comando e i comandi utilizzati nel terminale sono simili ai comandi e alla sintassi utilizzati nello script bash.
  • Lo script Bash può essere utilizzato per collegarsi ad altri file di script.

#03. Menziona gli svantaggi degli script bash

Alcuni svantaggi dello script bash sono menzionati di seguito:



  • Funziona più lentamente di altre lingue.
  • Lo script improprio può danneggiare l'intero processo e generare un errore complicato.
  • Non è adatto per lo sviluppo di un'applicazione grande e complessa.
  • Contiene una struttura di dati inferiore rispetto ad altri linguaggi di programmazione standard.

#04. Quali tipi di variabili vengono utilizzate in bash?

Nello script bash possono essere utilizzati due tipi di variabili. Questi sono:

Variabili di sistema
Le variabili predefinite e gestite dal sistema operativo Linux sono chiamate variabili di sistema. Questo tipo di variabili viene sempre utilizzato da una lettera maiuscola. I valori predefiniti di queste variabili possono essere modificati in base ai requisiti.

`set`, `env` e ` printenv ` è possibile utilizzare i comandi per stampare l'elenco delle variabili di sistema.

Esempio:





#!/bin/bash
# Variabili di sistema di stampa

#Stampa il nome della shell Bash
buttato fuori $BASH

# Stampa la versione shell di Bash
buttato fuori $BASH_VERSION

# Stampa il nome della directory principale
buttato fuori $HOME

Variabile definita dall'utente

Le variabili create e gestite dagli utenti sono chiamate variabili definite dall'utente. Sono anche chiamate variabili locali. Questi tipi di variabili possono essere dichiarati utilizzando lettere minuscole o maiuscole o entrambe le lettere maiuscole e minuscole. Ma è meglio evitare di usare tutte le lettere maiuscole per differenziare le variabili dalle variabili di sistema.
Esempio:

#!/bin/bash

nessuno=100
buttato fuori $num

#05. Come dichiarare ed eliminare le variabili in bash?

La variabile può essere dichiarata in bash per tipo di dati o senza tipo di dati. Se una variabile bash viene dichiarata senza dichiarare comando, la variabile verrà trattata come una stringa. La variabile Bash è dichiarata con dichiarare comando per definire il tipo di dati della variabile al momento della dichiarazione.



-R , -i, -a, -A, -l, -u, -t e -X le opzioni possono essere utilizzate con dichiarare comando per dichiarare una variabile con diversi tipi di dati.

Esempio:

#!/bin/bash

#Dichiara variabile senza alcun tipo
nessuno=10

I #valori verranno combinati ma non aggiunti
risultato=$num+venti
buttato fuori $risultato

#Dichiara variabile con tipo intero
dichiarare -io nessuno=10

#I valori verranno aggiunti
dichiarare -io risultato=num+venti
buttato fuori $risultato

non settato comando viene utilizzato per rimuovere qualsiasi variabile bash. La variabile sarà inaccessibile o indefinita dopo l'uso non settato comando.

Esempio:

#!/bin/bash

P='Suggerimento Linux'
buttato fuori $ str
non settato $ str
buttato fuori $ str

#06. Come aggiungere commenti in uno script bash?

Nello script bash è possibile utilizzare commenti a riga singola e multi riga. ' # Il simbolo ' viene utilizzato per i commenti a riga singola. '<<’ simbolo con un delimitatore e ':' con singolo (') vengono utilizzati per aggiungere commenti su più righe.

Esempio:

#!/bin/bash
#Stampa il testo [Commento a riga singola]
buttato fuori 'Programmazione Bash'
< Calcola la somma
Di due numeri [commento multilinea]
Aggiungi un commento

nessuno=25+35
buttato fuori $num
:'
Combina due
Dati stringa [commento multilinea]
'

Corda='Ciao'
buttato fuori $stringa' Mondo'

#07. Come puoi combinare le stringhe in uno script bash?

I valori delle stringhe possono essere combinati in bash in modi diversi. Normalmente, i valori delle stringhe vengono combinati mettendo insieme ma ci sono altri modi in bash per combinare i dati delle stringhe.

Esempio:

#!/bin/bash
#Inizializza le variabili
str1='PHP'
str2='bash'
str3='Perla'

# Stampa la stringa insieme allo spazio
buttato fuori $str1 $str2 $str3

#Combina tutte le variabili e memorizza in un'altra variabile
P='$str1,$str2e$str3'

#Combina altri dati di stringa con il valore esistente della stringa
str + ='sono linguaggi di scripting'

#Stampa la stringa
buttato fuori $ str

#08. Quali comandi vengono utilizzati per stampare l'output in bash?

`eco` e `printf` i comandi possono essere usati per stampare l'output in bash. `eco Il comando ` è usato per stampare l'output semplice e `printf` comando viene utilizzato per stampare l'output formattato.

Esempio:

#!/bin/bash

#Stampa il testo
buttato fuori 'Benvenuto in LinuxHint'
posto='linuxhint.com'
#Stampa il testo formattato
printf '%s è un popolare sito di blog ' $sito

#09. Come prendere input dal terminale in bash?

`leggere` comando viene utilizzato in uno script bash per ricevere input dal terminale.

Esempio:

#!/bin/bash
#Stampa messaggio
buttato fuori 'Inserisci il tuo nome'
#Ricevi input dall'utente
leggerenome
# Stampa il valore di $nome con un'altra stringa
buttato fuori 'Il tuo nome è$nome'

#10. Come utilizzare gli argomenti della riga di comando in bash?

Gli argomenti della riga di comando vengono letti da $1, $2, $3…$n variabili. I valori degli argomenti della riga di comando vengono forniti nel terminale durante l'esecuzione dello script bash. $ 1 è usato per leggere il primo argomento, $ 2 è usato per leggere il secondo argomento e così via.

Esempio:

#!/bin/bash
#Controlla che qualsiasi argomento sia fornito o meno
Se [[ $ # -eq 0 ]];poi
buttato fuori 'Nessun argomento è dato.'
Uscita 0
essere
#Salva il valore del primo argomento
colore=$ 1
# Stampa l'argomento con un'altra stringa
printf 'Il tuo colore preferito è %s ' $ colore

#11. Bash è un linguaggio debolmente digitato? Come mai?

Sì, bash è considerato un linguaggio debolmente o debolmente tipizzato perché non richiede di dichiarare il tipo dei dati al momento della dichiarazione della variabile. Tutte le variabili bash sono trattate come una stringa per impostazione predefinita e il tipo della variabile verrà impostato in base al valore corrente. Le variabili Bash con tipi di dati possono essere definite usando dichiarare comando con una particolare opzione. Ma le opzioni per definire i tipi di dati sono limitate e non supportano tutti i tipi di dati. Per esempio, galleggiante il tipo di dati non può essere dichiarato usando dichiarare comando.

Esempio:

#!/bin/bash

#Il tipo di dati di $myVar è stringa per impostazione predefinita
myVar=29

# Stampa la variabile
buttato fuori $myVar

# Dichiara la variabile intera $numero con il valore 67
dichiarare -io numero=67

#Stampa la variabile
buttato fuori $numero

# Assegna i dati della stringa alla variabile numerica. La riga seguente genererà
# errore di sintassi e il valore di $numero non cambierà
numero='mi piace bash'
buttato fuori $numero

#12. Come leggere la seconda parola o colonna da ogni riga di un file?

La seconda parola o colonna di un file può essere letta in uno script bash usando facilmente diversi comandi bash, come `awk`, `sed` ecc. Qui, l'uso di `awk` è mostrato nel seguente esempio.
Esempio: Supponiamo che il file course.txt contenga il seguente contenuto e che abbiamo stampato solo la seconda parola di ogni riga di questo file.

CSE201 Programmazione Java
Struttura dati CSE303
CSE408 Programmazione Unix#!/bin/bash
# Il seguente script stamperà la seconda parola di ogni riga dal file course.txt.
# l'output del comando cat passerà al comando awk che leggerà la seconda parola
# di ogni riga.
buttato fuori ``gattocorso.txt| awk '{stampa $2}'``

#13. Come dichiarare e accedere a una variabile array in bash?

Sia gli array numerici che quelli associativi sono supportati da uno script bash. Una variabile di matrice può essere dichiarata con e senza comando di dichiarazione. -a l'opzione viene utilizzata con il comando require per definire un array numerico e -A l'opzione viene utilizzata con l'istruzione dichiarazione per definire un array associativo in bash. Senza il comando di dichiarazione, l'array numerico può essere definito solo in bash.

Esempio:

#!/bin/bash

# Dichiara un semplice array numerico
arr1=(CodeIgniter Laravel ReactJS)

# Stampa il valore del primo elemento di $arr1
buttato fuori $ {arr1 [0] {

# Dichiara un array numerico usando il comando di dichiarazione
dichiarare -a arr2=(HTML CSS JavaScript)

# Stampa il valore del secondo elemento di $arr2
buttato fuori ${arr2[1]}

# Dichiara un array associativo usando l'istruzione dichiarazione
dichiarare -A arr3=( [struttura]=Laravel[CMS]= Wordpress[Biblioteca]=JQuery)

# Stampa il valore del terzo elemento di $arr3
buttato fuori ${arr3[Libreria]}

È possibile accedere a tutti gli elementi di un array utilizzando qualsiasi ciclo o simbolo '*' come indice dell'array.

#14. Come possono essere utilizzate le istruzioni condizionali in bash?

L'istruzione condizionale più comune nella maggior parte dei linguaggi di programmazione è l'if-elseif-else dichiarazione. La sintassi di if-elseif-else L'istruzione in bash è leggermente diversa dagli altri linguaggi di programmazione. 'Se' l'istruzione può essere dichiarata in due modi in uno script bash e ogni tipo di 'Se' il blocco deve essere chiuso con 'essere' . 'Se' l'istruzione può essere definita da terze parentesi o da prime parentesi come altri linguaggi di programmazione.

Sintassi:
A.

Se [condizione];
poi
dichiarazioni
essere

B.

Se [condizione];poi
dichiarazioni1
altro
dichiarazione2
essere

C.

Se [condizione];poi
dichiarazione1
elifa[condizione];poi
dichiarazione2
….
altro
dichiarazione n
essere

Esempio:

#!/bin/bash

# Assegna un valore a $n
n=30
# Controlla che $n sia maggiore di 100 o meno
Se [ $n -gt 100 ];poi
buttato fuori '$nè inferiore a 100'
# Controlla $n id maggiore di 50 o meno
elifa [ $n -gt cinquanta ];poi
buttato fuori '$nè inferiore a 50'
altro
buttato fuori '$nè inferiore a 50'
essere

#15. Come confrontare i valori in bash?

È possibile utilizzare sei tipi di operatori di confronto in bash per confrontare i valori. Esistono due modi per utilizzare questi operatori in bash a seconda del tipo di dati. Questi sono menzionati di seguito.

Confronto di stringhe Comareson intero Descrizione
== -eq È usato per controllare l'uguaglianza
! = -Nato È usato per controllare la disuguaglianza
< -lt Viene utilizzato per controllare che il primo valore sia inferiore o meno al secondo valore
> -gt Viene utilizzato per controllare che il primo valore sia maggiore o meno del secondo valore
<= -il Viene utilizzato per controllare che il primo valore sia inferiore o uguale al secondo valore o meno
> = -dare Si usa controllare che il primo valore sia maggiore o uguale al secondo valore o no

Esempio:

#!/bin/bash
# Inizializza $n
n=130
o='anche'
# Verifica che $n sia maggiore o uguale a 100 o non utilizzi '–ge'.
Se [ $n -dare 100 ];poi
buttato fuori '$nè maggiore o uguale a 100'
altro
buttato fuori '$nè inferiore a 100'
essere
# Verifica che $n sia pari o dispari utilizzando l'operatore '=='
Se (( $ o=='anche' ));poi
buttato fuori 'Il numero è pari'
altro
buttato fuori 'Il numero è dispari'
essere

#16. Quale istruzione condizionale può essere utilizzata come alternativa alle istruzioni if-elseif-else in bash?

'Astuccio' l'istruzione può essere utilizzata come alternativa tp se-altrimenti-se dichiarazione. La sintassi per 'Astuccio' l'istruzione negli script bash è diversa da scatola dell'interruttore dichiarazione di altri linguaggi di programmazione. 'Astuccio' il blocco è chiuso da 'esc' dichiarazione in bash. No ' rottura ' l'istruzione è usata all' interno di ' Astuccio ‘ blocco per terminare dal blocco.

Sintassi:

Astuccio in
Modello di corrispondenza1)comandi;;
Modello di corrispondenza2)comandi;;
……
Modello di corrispondenza n)comandi;;
esac

Esempio:

#!/bin/bash
#Inizializza la variabile $ticket
biglietto=101
# Confronta il valore di $ticket con 23, 101 e 503
Astuccio $biglietto in
2. 3)
# Stampa il messaggio se il valore è 23
buttato fuori 'Hai vinto il primo premio';;
101)
# Stampa il messaggio se il valore è 101
buttato fuori 'Hai vinto il secondo premio';;
503)
# Stampa il messaggio se il valore è 503
buttato fuori 'Hai vinto il terzo premio';;
*)
# Stampa il messaggio se il valore non corrisponde a 23, 101 e 503
buttato fuori 'Scusa, riprova la prossima volta'
Uscita 0;;
esac

#17. Quali diversi tipi di loop possono essere utilizzati in bash?

Tre tipi di loop sono supportati da uno script bash. Questi sono mentre, per e fino a loop. I loop in bash controllano la condizione all'inizio del loop. Mentre il ciclo funziona fino a quando la condizione rimane vera e fino a loop funziona finché la condizione rimane falsa. Ci sono due modi di usare per ciclo continuo. Uno è generale per loop che contiene tre parti e un altro è per-in ciclo continuo. Gli usi di questi tre loop sono mostrati nell'esempio seguente.

Esempio:

#!/bin/bash
# Inizializza $n
n=5
# Calcola il quadrato di 5-1 usando il ciclo while
mentre [ $n -gt 0 ]
fare
sqr= $((n*n))
buttato fuori 'La piazza di$nè$qr'
((n--))
fatto

# Calcola il quadrato di 5-1 usando il ciclo for
per (( io=5; io>0; io--))
fare
sqr= $((io*io))
buttato fuori 'La piazza di$iè$qr'
fatto

# Inizializza $x
X=5

# Calcola il quadrato di 5-1 usando il ciclo fino
fino a [ $ x -il 0 ]
fare
sqr= $((X*X))
buttato fuori 'La piazza di$ xè$qr'
((X--))
fatto

#18. Come possono essere dichiarate e chiamate le subroutine in bash?

In bash una funzione o una procedura è chiamata subroutine. La dichiarazione e la chiamata di una subroutine in bash è diversa dalle altre lingue. Nessun argomento può essere dichiarato nelle subroutine a differenza di altri linguaggi di programmazione standard. Ma le variabili locali possono essere definite all'interno della subroutine usando il 'Locale' parola chiave.

Esempio:

#!/bin/bash
# Inizializza le variabili $x e $y che sono globali
X=10
e=35

# Dichiara la funzione
myFunc() {
# Dichiara la variabile locale $x
Locale X=quindici

# Riassegna la variabile globale $y
e=25

# Calcola la somma di $x e $y
Insieme a= $((x + y))

# Stampa la somma di una variabile locale, $x, e di una variabile globale, $y
buttato fuori 'La somma di$ xe$ sìuguale a$ z'
}

# Chiama la funzione
myFunc

# Stampa la somma delle variabili globali, $x e $y
buttato fuori 'La somma di$ xe$ sìuguale a$ z'

#19. Come tagliare e stampare parte dei dati di una stringa in bash?

Bash non ha una funzione integrata come altri linguaggi per tagliare una parte dei dati della stringa. Ma usando l'espansione dei parametri qualsiasi valore di stringa può essere tagliato in bash. Tre parti possono essere definite nell'espansione dei parametri separandole con i due punti per tagliare qualsiasi parte dei dati della stringa. Qui, le prime due parti sono obbligatorie e l'ultima parte è facoltativa. La prima parte contiene la variabile stringa principale che verrà utilizzata per tagliare, la seconda parte è la posizione di partenza da cui verrà tagliata la stringa e la terza parte è la lunghezza della stringa di taglio. La posizione iniziale deve essere contata da 0 e la lunghezza deve essere contata da 1 della stringa principale per recuperare il valore di taglio.

Esempio:

#!/bin/bash
# Inizializza un valore stringa in $stringa
corda='Linguaggio di script Python'
# Taglia il valore della stringa dalla posizione 7 alla fine della stringa
buttato fuori ${stringa:7}
# Taglia il valore della stringa di 9 caratteri dalla posizione 7
buttato fuori ${stringa:7:9}
# Taglia il valore della stringa da 17 a 20
buttato fuori ${stringa:17:-4}

#20. Menzionare alcuni modi per eseguire operazioni aritmetiche in bash?

Le operazioni aritmetiche possono essere eseguite in più modi in bash. 'let', 'espr', 'bc' e doppie parentesi quadre sono i modi più comuni per eseguire operazioni aritmetiche in bash. Gli usi di questi comandi sono mostrati nell'esempio seguente.

Esempio:

#!/bin/bash
# Calcolare la sottrazione usando expr e l'espansione dei parametri
var1= $( espr 120-100 )
# stampa il risultato
buttato fuori $ var1
# Calcola l'addizione usando il comando let
permettere var2=200+300
# Stampa il risultato
buttato fuori $var2
# Calcola e stampa il valore della divisione usando 'bc' per ottenere il risultato
# con valore frazionario
buttato fuori 'scala=2; 44/7' | avanti Cristo
# Calcola il valore della moltiplicazione usando le doppie parentesi
var3= $(( 5*3 ))
# Stampa il risultato
buttato fuori $var3

#21. Come verificare l'esistenza di una directory o non utilizzare bash?

Bash ha molti comandi di test per verificare se un file o una directory esiste o meno e il tipo di file. '-D' l'opzione viene utilizzata con un percorso di directory come istruzione condizionale per verificare se la directory esiste o meno in bash. Se la directory esiste, restituirà true altrimenti restituirà false.

Esempio:

#!/bin/bash
# Assegna la directory con percorso nella variabile, $percorso
il percorso='/home/ubuntu/temp'
# Controlla che la directory esista o meno
Se [ -D '$percorso' ];poi
# Stampa il messaggio se la directory esiste
buttato fuori 'La directory esiste'
altro
# Stampa il messaggio se la directory non esiste
buttato fuori 'Directory non esiste'
essere

#22. Come può essere terminato uno script bash senza eseguire tutte le istruzioni?

Usando 'Uscita' comando, uno script bash può essere terminato senza eseguire tutte le istruzioni. Il seguente script verificherà se un particolare file esiste o meno. Se il file esiste, stamperà i caratteri totali del file e se il file non esiste, terminerà lo script mostrando un messaggio.

Esempio:

#!/bin/bash

# Inizializza il nome del file con la variabile, $nomefile
nome del file='corso.txt'

# Controlla che il file esista o meno usando l'opzione -f
Se [ -F '$nomefile' ];poi
# Stampa il messaggio se il file esiste
buttato fuori '$nomefileesiste'
altro
# Stampa il messaggio se il file non esiste
buttato fuori '$nomefilenon esiste'
# Termina lo script
Uscita 1
essere

# Conta la lunghezza del file se il file esiste
lunghezza=``WC -C $nomefile``

# Stampa la lunghezza del file
buttato fuori 'Caratteri totali -$lunghezza'

#23. Quali sono gli usi delle istruzioni break e continue in bash?

rottura l'istruzione viene utilizzata per terminare da un ciclo senza completare l'intera iterazione in base a una condizione e Continua l'istruzione viene utilizzata in un ciclo per omettere alcune istruzioni in base a una condizione. Gli usi di rottura e Continua affermazioni sono spiegate nel seguente esempio.

Esempio:

#!/bin/bash
# Inizializza la variabile $i su 0 per avviare il ciclo
io=0
# il ciclo itererà per 10 volte
mentre [ $i -il 10 ]
fare
# Incrementa il valore $i di 1
((io++))
# Se il valore di $i è uguale a 8, termina il ciclo usando l'istruzione 'break'
Se [ $i -eq 8 ];poi
rottura;
essere
# Se il valore di $i è maggiore di 6, ometti l'ultima istruzione del ciclo
# usando l'istruzione continue
Se [ $i -dare 6 ];poi
Continua;
essere
buttato fuori 'il valore corrente di i =$i'
fatto

# Stampa il valore di $i dopo essere terminato dal ciclo
buttato fuori 'Ora il valore di i =$i'

#24. Come rendere eseguibile un file bash?

I file bash eseguibili possono essere creati usando 'chmod' comando. I permessi eseguibili possono essere impostati usando '+X' in chmod comando con il nome file dello script. I file Bash possono essere eseguiti senza l'esplicito 'colpire' comando dopo aver impostato il bit di esecuzione per quel file.

Esempio:

# Imposta il bit di esecuzione
$chmod+ x nomefile.sh

# Esegui il file eseguibile
$./nomefile.sh

#25. Menziona alcune opzioni che vengono utilizzate per testare i file

Molte opzioni sono disponibili in bash per testare il file. Alcune opzioni sono menzionate di seguito.

Opzione Descrizione
-F Viene utilizzato per verificare che il file esista ed è un file normale.
-e Viene utilizzato solo per verificare che il file esista.
-R Viene utilizzato per verificare che il file esista e che abbia il permesso di lettura.
-in È usato per testare che il file esiste e deve scrivere il permesso.
-X Viene utilizzato per verificare che il file esista e che abbia il permesso di esecuzione.
-D Viene utilizzato per testare l'esistenza della directory.
-L Viene utilizzato per testare l'esistenza del file ed è un collegamento simbolico.
-S Viene utilizzato per verificare che il file esista ed è un socket.
-B Viene utilizzato per verificare che il file sia un dispositivo a blocchi.
-S Viene utilizzato per verificare che il file non sia di dimensioni zero.
-per esempio Era usato per controllare che il contenuto del primo file fosse più recente del secondo file. Ad esempio, file1 -nt file2 indica che file1 è più recente di file2.
-o Era usato per controllare che il contenuto del primo file fosse più vecchio del secondo file. Ad esempio, file1 -ot file2 indica che file1 è precedente a file2.
-ef Viene utilizzato per verificare che due hard link facciano riferimento allo stesso file. Ad esempio, flink1 -ef flink2 indica che flink1 e flink2 sono collegamenti fisici ed entrambi fanno riferimento allo stesso file.

#26. Cosa si intende per 'bc' e come può essere utilizzato questo comando in bash?

La forma completa di 'bc' è Calcolatrice Bash per eseguire operazioni aritmetiche in modo più accurato in bash. La parte frazionaria viene omessa se qualsiasi operazione aritmetica viene eseguita in bash usando 'Espr' comando. La parte frazionaria può essere arrotondata anche utilizzando scala valore con 'avanti Cristo' comando.

Esempio:

#!/bin/bash
# Calcola la divisione senza il valore frazionario
buttato fuori '39/7' | avanti Cristo

# Calcola la divisione con il valore frazionario completo
buttato fuori '39/7' | avanti Cristo -l

# Calcola la divisione con tre cifre dopo la virgola
buttato fuori 'scala=3; 39/7' | avanti Cristo

#27. Come puoi stampare una particolare riga di un file in bash?

Ci sono molti modi per stampare una particolare riga in bash. Come il 'awk', 'sed' e 'coda' i comandi possono essere usati per stampare una particolare riga di un file in bash è mostrato nell'esempio seguente.

Esempio:

#!/bin/bash

# Legge e memorizza la prima riga del file usando il comando `awk` con la variabile NR
Linea 1=``awk '{se(NR==1) stampa $0}'corso.txt``
# Stampa la linea
buttato fuori $line1

# Legge la seconda riga dal file usando il comando `sed` con l'opzione -n
linea 2=``sed -n2p corso.txt``
# Stampa la linea
buttato fuori $line2

# Legge l'ultima riga del file usando il comando `tail` con l'opzione -n
linea3=``coda -n 1corso.txt``
# Stampa il file
buttato fuori $line3

#28. Cos'è l'IFS?

IFS è una variabile di shell speciale. La forma completa di IFS è il separatore di campo interno,
funge da delimitatore per separare la parola dalla riga di testo. Viene utilizzato principalmente per dividere una stringa, leggere un comando, sostituire il testo ecc.

Esempio:

#!/bin/bash
# Dichiara ':' come delimitatore per dividere il testo
IFS=':'
# Assegna i dati di testo con ':' a $testo
testo='Rosso:Verde:Blu'
# for loop leggerà ogni parola dopo aver diviso il testo in base a IFS
perorein $testo;fare
# Stampa la parola
buttato fuori $ ore
fatto

#29. Come scoprire la lunghezza di una stringa di dati?

'espr', 'wc' e 'Awk' i comandi possono essere usati per scoprire la lunghezza di una stringa di dati in bash. 'Espr' e 'Awk' i comandi usano lunghezza opzione, 'WC' il comando usa '-C' opzione per contare la lunghezza della stringa.

Esempio:

Gli usi dei comandi precedenti sono mostrati nello script seguente.

#!/bin/bash
# Conta la lunghezza usando l'opzione di lunghezza `expr`
buttato fuori ``esprlunghezza'Mi piace PHP'``
# Conta la lunghezza usando il comando `wc`
buttato fuori 'Mi piace Bash' | WC -C
# Conta la lunghezza usando il comando `awk`
buttato fuori 'Mi piace Python' | awk '{lunghezza di stampa}'

#30. Come eseguire più script bash in parallelo?

È possibile eseguire più script bash in parallelo utilizzando nohup comando. Come è possibile eseguire più file bash in parallelo da una cartella è mostrato nell'esempio seguente.

Esempio:

# Assegna un nome alla cartella con il percorso nella variabile $dir che contiene
# più file bash
a te='casa/Ubuntu/tempo'

# for loop leggerà ogni file dalla directory ed eseguirà in parallelo
persceneggiaturaina te/ *.SH
fare
nohup bash '$script' &
fatto

Conclusione:

La maggior parte delle domande di base per l'intervista con script bash sono descritte in questo articolo per i lettori che desiderano iniziare una carriera come programmatore bash.