我已经阅读了在bash中尝试嵌入换行符,我理解了换行符作为IFS以及bash有时将换行符转换为空格的情况,但是我不理解以下情况:
[prompt]$ blah="$(printf "hi\n\n\n\n")"
[prompt]$ echo "$blah"
hi
[prompt]$ blah="$(printf "hi\n\n\n\nx")"
[prompt]$ echo "$blah"
hi
x
为什么第一个回声没有输出一堆换行符呢?谢谢。
我已经阅读了在bash中尝试嵌入换行符,我理解了换行符作为IFS以及bash有时将换行符转换为空格的情况,但是我不理解以下情况:
[prompt]$ blah="$(printf "hi\n\n\n\n")"
[prompt]$ echo "$blah"
hi
[prompt]$ blah="$(printf "hi\n\n\n\nx")"
[prompt]$ echo "$blah"
hi
x
printf -v blah "hi\n\n\n\n"
或者blah=$'hi\n\n\n\n'
。 - chepner