现象:
当时shell读取文件的每一行,然后打印每一行文本,类似如下代码
echo "===========$line==========="
但是最后显示的结果类似于
======xxxxxx
前后的标记字符要么不全要么直接就没有了,非常奇怪
中间省略各种尝试和验证...
根因:
vim 读取的文件,使用set ff
查看文本换行符格式,显示dos
解决办法:
set ff=unix
,再次执行脚本,问题解决。
扩展:
使用file
命令可以查看文本的格式
file xxx.txt
显示 xxx.txt: ASCII text
,说明是unix格式
file xxx.txt
显示 xxx.txt: ASCII text, with CRLF line terminators
,说明是dos格式