GNU/Linux >> Tutoriels Linux >  >> Linux

comment obtenir des éléments de la liste en bash?

pas d'espace entre le signe égal

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

D'autres moyens, bien que moins efficaces que l'utilisation des composants internes du shell

$ 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

Juste pour compléter la réponse de ghostdog :vous pouvez également mettre $List dans un tableau et accédez à l'élément de liste spécifique à partir de là

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

Notez que les indices du tableau sont comptés 0,1,2,... .

Cela a l'avantage de ne pas polluer l'environnement du shell avec trop de nouvelles variables.


Linux
  1. Comment alimenter les requêtes mysql à partir de bash

  2. Comment puis-je faire en sorte que sed lise à partir de l'entrée standard?

  3. Comment puis-je obtenir des valeurs uniques à partir d'un tableau dans Bash ?

  4. Comment obtenir le répertoire absolu d'un fichier dans bash ?

  5. Comment puis-je obtenir un binaire à partir d'un fichier .py

Bash break :comment sortir d'une boucle

Comment obtenir une liste de liens symboliques sous Linux

Comment désactiver ou supprimer une fonction bash ?

Comment obtenir un masque de réseau à partir de bash ?

Comment puis-je obtenir mon adresse IP à partir de la ligne de commande ?

Comment obtenir le nom de l'utilisateur à partir de l'uid