Guest User

Untitled

a guest
Feb 23rd, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.57 KB | None | 0 0
  1. parse_yaml() {
  2. local prefix=$2
  3. local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '34')
  4. sed -ne "s|^($s)($w)$s:$s"(.*)"$s$|1$fs2$fs3|p"
  5. -e "s|^($s)($w)$s:$s(.*)$s$|1$fs2$fs3|p" $1 |
  6. awk -F$fs '{
  7. indent = length($1)/2;
  8. vname[indent] = $2;
  9. for (i in vname) {if (i > indent) {delete vname[i]}}
  10. if (length($3) > 0) {
  11. vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
  12. printf("%s%s%s="%s"n", "'$prefix'",vn, $2, $3); #How to return all values concated
  13. }
  14. }'
  15. }
  16.  
  17. allContent=parse_yml.
  18.  
  19. r=$r$vn$2$3
Add Comment
Please, Sign In to add comment