GNU/Linux >> Znalost Linux >  >> Linux

jak získat prvky ze seznamu v bash?

žádné mezery mezi rovnítkem

$ List="abcd 1234 jvm something"
$ set -- $List
$ echo $2
1234

Některé další způsoby, i když ne tak účinné jako použití vnitřních částí shellu

$ echo $List | cut -d" " -f2
1234
$  echo $List | awk '{print $2}'
1234
$ echo $List | sed 's/^.[^ \t]* //;s/ .*//'
1234
$ echo $List | tr " " "\n"|sed -n '2p'
1234

Jen pro doplnění odpovědi ghostdog:můžete také zadat $List 's do pole a odtud přístup ke konkrétnímu prvku seznamu

List="abcd 1234 jvm something"
arr=($List)
echo ${arr[1]}

Všimněte si, že indexy pole se počítají 0,1,2,... .

To má tu výhodu, že neznečišťuje prostředí shellu příliš mnoha novými proměnnými.


Linux
  1. Jak krmit mysql dotazy z bash

  2. Jak se dostanu ke čtení ze standardního vstupu?

  3. Jak mohu získat jedinečné hodnoty z pole v Bash?

  1. Jak získat stav ukončení smyčky v bash

  2. Jak získám absolutní adresář souboru v bash?

  3. Jak získat seznam adresářů v zipu?

  1. Jak mohu získat poslední číslo z řetězce v bash?

  2. Jak zruším nastavení nebo se zbavím funkce bash?

  3. Jak získat masku sítě z bash?