Cosa è $@ in uno script bash?

Cosa è $@ in uno script bash?
La maggior parte di noi usa script bash per manutenzione e alcune altre attività. Tuttavia, non conosciamo sempre le varie opzioni di bash. Ogni volta che un utente è un principiante per la shell bash e Linux, l'utente tende a cercare uno script bash pre-scritto. Ciò è dovuto ad alcuni utenti che trovano i personaggi bash unici come $@, $ _ e $ 1 confuso. A partire dal parametro $@ bash, viene utilizzato per estendersi negli argomenti posizionali. Ogni parametro si estende in qualcosa di simile a una parola distinta ogni volta che si espande in doppia citazione. I parametri separati devono essere racchiusi nelle citazioni e distinti da uno spazio se viene utilizzato $@. Ricorda che $@ dovrebbe essere citato per funzionare correttamente. Tuttavia, si comporta in modo simile agli argomenti come stringhe distinte.

Guarderemo diversi esempi per elaborare la funzionalità di $@ nello script bash mentre usi Ubuntu 20.04 Sistema:

Esempio 01:

All'inizio, dobbiamo accedere da Ubuntu 20.04 Distribuzione come utente sudo. Dopo l'accesso riuscito, apriremo la riga di comando per iniziare a funzionare. Per aprirlo, usa "Ctrl+alt+t". In alternativa, possiamo anche utilizzare l'area di attività per trovare il terminale della console dalla barra di ricerca. Dopo averlo aperto correttamente, inizieremo a lavorare su $@ in bash creando un nuovo file bash. Quindi, abbiamo utilizzato il "tocco"Interrogazione con il nome di un file come"uno.sh". Si noti che il file bash contiene un ".sh"Estensione. Colpo "accedere"Dopo aver scritto le seguenti istruzioni nella shell per eseguirla. Troverai il file bash appena generato nella tua home directory di Ubuntu 20.04:

$ TOUCT UNE.sh

Ora, il file bash è stato generato; Dobbiamo aprirlo in un editor per aggiungere e modificare lo script bash al suo interno. Quindi, lo apriremo usando il "Gnu nano"Editor dalla shell del terminale. Quindi, abbiamo usato il “nano"Istruzione della parola chiave nella shell insieme al nome di un file come"uno.sh"Secondo la seguente immagine:

$ nano uno.sh

Devi scrivere il seguente script a tre linee nel tuo file bash "uno.sh". Abbiamo aggiunto prima l'estensione bash nel file. Successivamente, abbiamo usato le tre dichiarazioni di eco in questo script per utilizzare i tre caratteri speciali e produrre i rispettivi risultati. Nota che il "$#"Il carattere è stato utilizzato per produrre il numero totale di stringhe di input o parametri di valori che verranno aggiunti dall'utente nella shell. IL "$@"Il carattere viene utilizzato per mostrare questi tre valori o parametri sul terminale e"$?"Il personaggio ha un compito speciale per restituire 0 se l'ultimo comando diventa riuscito. In Bash, il "Ctrl+s"Il collegamento viene spesso utilizzato per salvare il file bash mentre è aperto in una sorta di"nano"Editore. Quindi, salva il tuo.file sh e lascialo usare "Ctrl+X"Per restituirlo al terminale:

Ora, lo script bash appena creato è stato salvato e fissato nel nostro sistema; È giunto il momento di renderlo eseguibile. Devi notare che il carattere come $@ prende i parametri dei valori all'interno del terminale durante l'esecuzione di un file. Quindi, usa il “Bash"Query per parole chiave nella shell di Ubuntu con il nome di un file"uno.sh"E assegnare i valori dei parametri, come indicato. Dallo snap puoi vedere che abbiamo fornito i valori dei parametri di tipo String a 3 stringhe a Bash Script One.Lei.G., Aqsa, Rimsha e Awan. Il risultato di output sta visualizzando l'output a 3 righe. La prima riga mostra il numero di parametri totali aggiunti. La seconda riga sta visualizzando i valori degli argomenti passati dall'utente. Infine, la terza riga mostra 0 come valore di ritorno perché il comando della seconda riga ha avuto successo:

$ bash uno.sh arg1 arg2 arg3

Esempio 02:

Per capire di più il concetto di $@ personaggio e funzionalità, abbiamo bisogno di un altro esempio nel nostro articolo. Quindi, apriremo lo stesso file, "uno.sh", Con l'editore GNU Nano. Per questo, abbiamo provato le seguenti istruzioni e abbiamo fatto clic sul pulsante "Invio" dalla tastiera per continuare:

$ nano uno.sh

Man mano che il file viene aperto ora, aggiungiamo un nuovo e aggiornato script bash. Questa volta, abbiamo usato un semplice script bash per elaborare la funzione del personaggio $@. Quindi, devi aggiornare il tuo script bash con quello mostrato nell'immagine qui sotto. Stiamo usando il ciclo per prendere un elemento alla volta mentre gli argomenti passati in $@ da un utente sul terminale. Ogni elemento viene visualizzato sul terminale tramite l'istruzione Echo. Dopo aver salvato il file, siamo tornati alla console per eseguire lo script bash:

All'interno dell'istruzione bash, abbiamo superato gli argomenti a 5 stringa insieme al nome di un file "uno.sh". Dopo aver colpito il "accedere"Chiave, il terminale è stato visualizzato con ogni argomento separatamente:

$ bash uno.sh arg1 arg2 arg3 arg4 arg5

Esempio 03:

Diamo un'occhiata più da vicino a un altro stesso esempio di $@ come elaborato sopra. In questo esempio, useremo $@ e $* per confrontare e differenziare il funzionamento di entrambi i personaggi speciali. In questo modo, saremo in grado di capire correttamente il funzionamento del personaggio $@. Per aprire il file già creato "uno.sh", Scrivi e quindi esegui le seguenti istruzioni all'interno della console di Ubuntu 20.04.

$ nano uno.sh

Abbiamo aggiornato il codice di esempio sopra. Tutto quello che abbiamo fatto è aggiungere lo stesso codice per "$*"All'interno del ciclo per. Abbiamo salvato il codice bash ed è uscito dal file:

Mentre l'esecuzione, a causa dell'utilizzo del carattere $*, mostra la prima riga come tutti i parametri. Tutte le altre righe sono l'output del carattere $@:

$ bash uno.sh arg1 arg2 arg3 arg4 arg5

Esempio 04:

Nel nostro ultimo esempio, spiegheremo la funzionalità del personaggio $@ attraverso funzioni e loop. Pertanto, per aggiornare lo script bash, abbiamo aperto il file "uno.sh"Ancora una volta dal"nano"Comando editor nella shell come segue:

$ nano uno.sh

Questa volta, abbiamo usato il metodo foo () per stampare gli argomenti passati nei rispettivi metodi di caratteri speciali fino a non avere nulla. Il metodo "Dollar1"È per $@ personaggio speciale e"Dollaro2"Per il funzionamento dei caratteri $*. Entrambi i metodi contengono la chiamata del metodo foo () con il carattere speciale $@ e $* separatamente per superare gli argomenti. I metodi Dollar1 e Dollar2 sono chiamati dopo le dichiarazioni di eco mentre entrambi contengono gli stessi tre argomenti dei loro valori parametrici:

L'esecuzione del codice mostra l'output per i metodi Dollar1 e Dollar2 separatamente. "Using $@" mostra l'output per $@e il "usare $*" mostra l'output per il carattere $* separatamente.

$ bash uno.sh

Conclusione:

Questa guida ha descritto come usare $@ nello script bash, dichiararlo e come funziona. Abbiamo anche descritto la differenza tra $@ e altri personaggi relativi al dollaro per renderlo più comprensibile. Speriamo che anche ti sia piaciuto mentre lo implementiamo.