История изменений
Исправление DRVTiny, (текущая версия) :
Так работает, но я не понимаю абсолютно, как printf понимает, где заканчивается одно %s и начинается другое!
declare -a arr=('a b c' 'd e f' 'g h i')
printf -v outLine '%s:::' "${arr[@]}"
echo "$outLine"
Мне всегда казалось, что ${arr[@]} должен раскрываться/интерполироваться ДО того, как он станет аргументом printf'а, а магия здесь, наверное, в том, что printf - это не внешняя команда.
Исходная версия DRVTiny, :
Так работает, но я не понимаю абсолютно, как printf понимает, где заканчивается одно %s и начинается другое!
declare -a arr=('a b c' 'd e f' 'g h i')
printf -v outLine '%s:::' "${arr[@]}"
echo "$outLine"
Мне всегда казалось, что ${arr[@]} должен раскрываться ДО того, как он станет аргументов printf'а, а магия здесь, наверное, в том, что printf - это не внешняя команда.