Привет всем,
не пойму куда исчезают new line characters в след коде:
#!/bin/bash
declare -a dir_array
while IFS= read -r -d $'\0'; do
tmp="${REPLY#./}"
dir_array+="$tmp\n"
done < <(find . -maxdepth 1 ! -path . -type d -print0)
readarray -t sorted < <(for a in "${dir_array[@]}"; do printf "$a"; done | sed '/^[[:space:]]*$/d' | sort)
emp="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n"
printf "${dir_array[*]}"
printf $emp
printf $emp
printf $emp
printf "${sorted[*]}"
При этом первый массив, dir_array печатается правильно, в столбик, а второй sorted сплошной линией?
всем добра,
Вадим