引用 您的变量。原因如下:
$ f="fafafda> adffd> adfadf> adfafd> afd"$ echo $ffafafda adffd adfadf adfafd afd$ echo "$f"fafafdaadffdadfadfadfafdafd
不带引号的外壳将替换
$TEMP为其包含的字符(其中之一是换行符)。然后,在调用
echoshell 之前,先使用
Internal FieldSeparator(IFS)将该字符串拆分为多个参数,然后将所得的参数列表传递给
echo。默认情况下,
IFS设置为空白(空格,制表符和换行符),因此Shell将您的
$TEMP字符串切成参数,并且永远也看不到换行符,因为Shell会将其视为分隔符,就像空格一样。



