Cosa è $ 0 in uno script bash?

Cosa è $ 0 in uno script bash?

Bash è un interprete di comando e uno script. Come altre forme di codifica, supporta l'inoltro, le variabili e le funzioni di pacchetti. Uno script è un file con comandi che il software può visualizzare ed eseguire. In Linux, Bash ci dà parametri posizionali come "$ 0", "$ 1", "$ 2", "$ 3", ecc. In questo articolo, verrà utilizzato uno dei suoi parametri posizionali, "$ 0".

Esempio n. 1: usando $ 0 in uno script bash

Il nome del terminale o dello script condotto viene ampliato usando "$ 0". All'inizializzazione della shell, questo è impostato. $ 0 è assegnato al nome di quella directory se Bash viene chiamato con una raccolta di comandi. Per dirla semplicemente, utilizziamo "$ 0" in bash per archiviare il nome dello script e visualizzarlo nel terminale. I parametri per il comando bash su Linux sono "$ 0", "$ 1" e "$ 2, ecc. Il primo memorizza il nome dello script, il secondo memorizza il primo valore e così via.

Ora, in questa sezione, useremo il comando "Echo" per visualizzare il nome della shell bash. Per fare ciò, dobbiamo eseguire il comando sul terminale, ma prima dobbiamo creare un file bash. Poiché uno esiste già e si trova sul desktop, lo utilizzeremo in questo articolo. Il suo nome è “Codice.sh."

Per stampare il nome dello script sul terminale quando apriamo questo file, dobbiamo prima aggiungere la shell, che è "#!/bin/bash ",. Nella riga successiva, dobbiamo passare il parametro "$ 0" all'interno del comando Echo perché il nome del file è memorizzato in questo parametro.

#!/Bin/Bash
Echo $ 0

Ora eseguiremo il comando inserendo prima il termine "bash" e poi il nome dello script, "Codice.sh."

Linux@Linux: ~/Desktop $ Bash Code.sh

Come mostrato nello screenshot seguente, quando eseguiamo questo comando, il nome dello script, “Codice.Sh ", viene visualizzato.

L'opzione "$ 0" in bash verrà ora utilizzata nella sezione seguente per visualizzare il nome corrente dello script insieme all'istruzione. Per raggiungere questo obiettivo, creeremo uno script in cui, dopo aver aggiunto la shell come descritto sopra, utilizziamo il comando "Echo" per stampare l'istruzione, "Il nome del file è:."L'affermazione che desideriamo stampare deve essere digitata con una virgola invertita prima di passare la variabile" $ 0 ", che memorizza il nome dello script.

#!/Bin/Bash
echo "Il nome del file è:" $ 0

Il comando che ora useremo è "Bash", seguito dal nome dello script, "Codice.sh". Quando eseguiamo questo comando, verranno visualizzati la stringa di input e il nome dello script, che viene salvato in "$ 0".

Linux@Linux: ~/Desktop $ Bash Code.sh

Ora puoi vedere nell'immagine qui sotto che il nome del file per lo script, "Codice.Sh ", viene visualizzato insieme all'istruzione Echo," Il nome del file è ".

Esempio n. 2: visualizzare il nome dello script alla fine utilizzando "$ 0" di Bash.

Ora, in questa sezione, useremo "$ 0" nella sezione finale dello script, che visualizzerà il nome del file bash alla fine. Per questo, costruiremo uno script in cui usiamo per la prima volta la shell bash, che è "#!bin/bash ", e poi inizializziamo le variabili" x "," y "e" z ", assegnando valori a ciascuno di essi" 6 "per" x "," 4 "per" y "e" 9 "per "Z". Quindi useremo il comando Echo per stampare questi valori nel seguente. Per fare ciò, passiamo il parametro "$" insieme alle variabili che contengono i numeri, quindi usiamo "$ x", "$ y" e "$ z."Questo visualizzerà i valori nel terminale quando il file bash viene aperto usando il comando nel terminale.

Quindi, nella riga seguente, utilizziamo ancora una volta il comando "Echo" per stampare l'istruzione e il nome dello script usando l'argomento "$ 0."Poiché il nome dello script è archiviato nel file, l'istruzione che dobbiamo stampare è" Il nome del file è: "e lo facciamo passando" $ 0 "come argomento.

#!/Bin/Bash
X = 6
Y = 4
Z = 9
echo "$ x" "$ y" "sz"
echo "Il nome del file è:" $ 0

Viene ora utilizzato il comando per aprire l'output dello script nel terminale.

Linux@Linux: ~/Desktop $ Bash Code.sh

Ora che questo comando è stato eseguito, puoi vedere nell'immagine qui sotto che prima ha visualizzato i valori "6", "4" e "9" prima di visualizzare l'istruzione "Il nome del file è" e il nome del file " codice.sh "nella linea che segue.

Esempio n. 3: usando $ 0 nella funzione bash

In questa sezione, useremo la funzione bash per sottrarre due numeri e stampare il nome del file bash pertinente posizionando un "$ 0" all'interno del corpo della funzione. Per fare ciò, svilupperemo uno script in cui creiamo una funzione chiamata "func ()". Poiché è una procedura definita dall'utente, siamo liberi di scegliere il suo nome. Quindi, nella riga seguente, utilizziamo parentesi ricci per formare il corpo della funzione. All'interno di queste parentesi, utilizziamo la variabile "sub", in cui memorizziamo la sottrazione di due numeri utilizzando il parametro "$".

Successivamente, utilizziamo i racchetti a doppio round. All'interno di queste parentesi, eseguiamo la sottrazione di due numeri. Pertanto, usiamo "$ 1- $ 2". Il numero che specifichiamo quando invocano la funzione "func" verrà archiviato nei suoi valori dei parametri "$ 1" e "$ 2". Successivamente, utilizziamo il comando Echo per stampare l'istruzione e la risposta utilizzando la variabile "sub" con l'argomento "$."Perché il risultato della sottrazione è archiviato in questo.

Successivamente, utilizziamo il comando Echo per stampare l'istruzione e il nome dello script usando "$ 0" L'istruzione è "Il nome dello script è", e passiamo l'argomento "$ 0. Quindi, nella riga seguente, chiamiamo la funzione usando il suo nome, "Func" e forniscono due numeri come argomenti, "50" e "30", che saranno archiviati in "$ 1" e "$ 2", prima di eseguire l'operazione di sottrazione.

#!/Bin/Bash
func ()

Sub = $ (($ 1 -$ 2))
echo "La risposta è: $ sub"
Echo "Il nome dello script è:" $ 0

Func 50 30

Per visualizzare il risultato nel terminale, ora useremo lo stesso comando della sezione precedente.

Linux@Linux: ~/Desktop $ Bash Code.sh

Ora, ha visualizzato il risultato di sottrarre i numeri forniti, che è "20", con l'affermazione "La risposta è", e nella riga seguente, ha visualizzato l'affermazione "Il nome dello script è" insieme al nome dello script bash, "Codice.Sh ", che viene visualizzato fornendo il parametro" $ 0 "a Bash.

Conclusione

Questo articolo ha discusso usando "$ 0" negli script di Linux Bash. Perché il nome del file è archiviato in questo "$ 0", l'abbiamo utilizzato in vari casi e mostrato il nome dello script bash nel terminale. Nella prima sezione, il nome dello script viene semplicemente stampato usando il comando Echo e "$ 0". Nella seconda sezione, abbiamo usato "$ 0" per visualizzare il nome dello script alla fine e, nell'esempio finale, abbiamo utilizzato la funzione bash () per eseguire un'operazione di sottrazione utilizzando anche "$ 0" nel corpo della funzione.