Как превратить вывод команды в циклический массив в git-bash для Windows? - PullRequest
1 голос
/ 09 апреля 2019
$ find <some-path> -type f -name '*.csv' -printf "%f\n" | awk -F. '{ if(match($1, /[XO]/)) { print ("\""$1"\"") } else { print("\""substr($1, match($1, /^[0-9]+/), match($1, /MAP/)-1)" MAP\"") }  }' | sed ':a;N;$!ba;s/\n/ /g'  
"10OMAP" "10XMAP" "11 MAP" "12 MAP" "13 MAP" "14 MAP" "15 MAP" "2 MAP" "3 MAP" "4 MAP" "5 MAP" "6 MAP" "7 MAP" "8 MAP" "9 MAP"

$ meArray=$(find <same-some-path> -type f -name '*.csv' -printf "%f\n" | awk -F. '{ if(match($1, /[XO]/)) { print ("\""$1"\"") } else { print("\""substr($1, match($1, /^[0-9]+/), match($1, /MAP/)-1)" MAP\"") }  }' | sed ':a;N;$!ba;s/\n/ /g')


$ echo ${meArray[1]}  # This one is fine...
"10XMAP"

$ echo ${meArray[2]} # Ones with spaces, not so much...
"11

$ echo ${meArray[3]}
MAP"

Я хотел бы иметь возможность поместить это в одномерный массив и перебрать его, но пробелы продолжают вызывать проблемы, когда я пытаюсь создать массив.

...