字符0D再度惹出麻烦

  前次是移植Redhat遇到\r来捣乱,此次编写Linux脚本又遇到字符0D来惹麻烦。windows


  这个脚本是从网上一个参考案例中复制过来,想省点事,结果比本身敲10遍还费事。bash


  很简单的命令:ide

  # /bin/bashunix

  DB_USER="root"
  echo $DB_USERget

  DB_USER1=$DB_USER""==it

  echo $DB_USERclass

  结果输出是:变量

  root方法

  ==ot脚本


  查了好一阵,才发现Linux中每行结束只有0A,而网上复制过来后,在windows系统中会变成0D 0A,多出来的0D会附加在变量上,因为不可见,所以被我忽略。可是0D被Linux系统解释为回到行头,因而就从新输出,替代了原来的字符。


  怎么办呢?只好多长一个心眼,在Linux下手工敲赋值语句了。另一个方法是安装dos2unix,将windows下编辑的文本中0D 0A改成0A。


  安装dos2unix的命令:sudo apt-get install dos2unix


  而后,dos2unix 脚本名称

相关文章
相关标签/搜索