Come arrivare l'ennesimo posizionale argomento in bash?
-
19-09-2019 - |
Domanda
Come ottenere il n
th posizionale argomento in Bash, dove n
è variabile?
Soluzione
L'uso di Bash riferimento indiretto caratteristica:
#!/bin/bash
n=3
echo ${!n}
Eseguendo il file:
$ ./ind apple banana cantaloupe dates
Produce:
cantaloupe
Edit:
Si può anche fare un array di taglio:
echo ${@:$n:1}
ma non gli indici di matrice:
echo ${@[n]} # WON'T WORK
Altri suggerimenti
Se N
viene salvato in una variabile, utilizzare
eval echo \${$N}
se si tratta di un uso costante
echo ${12}
dal
echo $12
non significa la stessa cosa!
$1 $2 ... $n
$0
contiene il nome dello script.
Come si può vedere nel Bash per esempi , è sufficiente utilizzare le variabili automatiche $ 1, $ 2, e così via.
$ # è usato per ottenere il numero di argomenti.
Leggi
Gestione parametri posizionali
e
$ 0: il primo parametro posizionale
$ 1 ... $ 9: gli elementi della lista argomento da 1 a 9
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow