Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
documentation:tools:langages:bash [2023/01/13 08:47] – [pattern matching] ltaulelldocumentation:tools:langages:bash [2023/01/13 08:48] (Version actuelle) – supprimée ltaulell
Ligne 1: Ligne 1:
-====== Bash ====== 
- 
-:!: le shell par défaut à la création du compte est ''/bin/bash''. Vous pouvez demander à en changer via [[contact:forms:accueil|les formulaires web]]. 
- 
- 
-<note important>Utilisez **shellcheck** !!</note> 
- 
- 
- 
- 
-===== Exemples & Astuces ===== 
- 
- 
- 
- 
- 
-==== Tableaux associatifs ==== 
- 
-On peut nommer les entrées d'un tableau (l'index). 
- 
-  * astuce : 
- 
-<code bash> 
-tab[wwsi]="whatever/wwsi" 
-tab[wwoz]="whatever/to/wwoz" 
-tab[fip]="http://audio.scdn.arkena.com/11016/fip-midfi128.mp3" 
-</code> 
- 
-Lister le tableau associatif : 
- 
-  * brute : 
-<code bash> 
-for i in "${tab[@]}"; do echo "${i}"; done 
-</code> 
- 
-  * astuce (boucle induite) : 
-<code bash> 
-printf "%s\n" "${tab[@]}"; done 
-</code> 
- 
-Simplification de code résultante : 
- 
-Parcours du tableau, connaissant l'index (ici $value). 
- 
-  * Avant : 
-<code bash> 
-tindex=$(for i in "${tab[@]}"; do echo "${i}"; done | grep "${value}") 
-for ((i=0; i<${#tab[@]}; i++)) 
-do 
-  if [[ "$tindex" == "{tab[$i]}" ]] 
-  then 
-    data="${tab[$i]}" 
-  fi 
-done 
-</code> 
- 
-  * Aprés : 
-<code bash> 
-tindex=$(printf "%s\n" "${tab[@]}" | grep "${value}") 
-data="${tab[$tindex]}" 
-</code> 
- 
-<note warning>Tout ces exemples de scripts bash n'ont pas forcément été testé avec shellcheck. **Faites-le !**</note> 
  
documentation/tools/langages/bash.1673599674.txt.gz · Dernière modification : 2023/01/13 08:47 de ltaulell