Yaml Test Bashscript

Manchmal möchte man einen Ordner nach YAML-Dateien mit validem Code durchsuchen. Fehler sollen angezeigt werden.

Um das Script richtig auszuführen,wird die Ruby App Psych benötigt

Kurze Beschreibung:

  • #! Shebang
  • a  is ein Array  . Eingelesen werden alle Dateien mit Endung yaml . Zeilenvorschub wird unterdrückt -t
  • Schleife Anfang. Array a wird ausgelesen.
  • lolo ist der Variablenname.
  • Mit der Rubyapp Psych wird der Inhalt der Datei geparst.
  • Fehlermeldung wird  angezeigt.
  • Ist "exit 1" kommentiert, läuft das Script durch.
  • Schleife Ende.
#!/bin/bash
readarray -t a < <(ls *.yaml) 
for IND in ${!a[@]}; do
lolo="${a[$IND]}"
ruby -ryaml -e "Psych.parse(File.open('$lolo'))" 
if [[ $? -ne 0 ]]
  then
    echo "$lolo is not valid YAML"
#    exit 1
  else
      echo "$lolo is a valid YAML"
fi
done

 

  • Kenntnisse zum Verstehen des Artikels: LINUX