Я хочу построить строку, содержащую цитируемые группы слов. Эти группы должны перейти к одному аргументу функции. Я пытался играть с массивами. Буквально сконструированные массивы работают, но я все же надеюсь найти волшебный синтаксис для пустой строки.Как сохранить разделенные пробелы группы в bash
# literal array
LA=(a "b c")
function printArgs() { # function should print 2 lines
while [ $# -ne 0 ] ; do print $1 ; shift; done
}
printArgs "${LA[@]}" # works fine
# but how to use string to split only unquoted spaces?
LA="a \"b c\""
printArgs "${LA[@]}" # doesn't work :(
LA=($LA)
printArgs "${LA[@]}" # also doesn't work :(
Баш массивы имеют проблемы, они не могут быть переданы транспортером - (эхо/$()).
Конечно нет. Если бы это было возможно *, для массивов не было бы необходимости. – chepner