保留 find -printf 输出中的空格

preserve whitespace from find -printf output

我正在使用 fond 读取文件列表并使用 -printf 输出它,我基本上是在创建一个由换行符分隔的字符串。当我尝试遍历此文件时,其中包含空白字符的文件名呈现为新条目。

如何在保留文件名中的空格的同时阅读此内容?

loop() {
    files=$(find "${base}" -name "*" -printf "%TD%TT|%p\n")

    for string in $files
    do 
        stamp=${string%|*}
        file=${string#*|}

        echo "$stamp - $file"
    done
}

由于 shellter 的评论,While 循环允许我将行分隔为变量:

loop() {
    while read string
    do
        stamp=${string%|*}
        file=${string#*|}

        files_new[$file]=$stamp
    done < <(find "${base}" -name "*" -printf "%TD%TT|%p\n")
}