在windows下编辑shell脚本注意点

编辑脚本是直接在windows下写的,并没有使用特定的编辑器或者其他工具,所以很有可能出现一些莫名其妙的异常,这些错误是我们眼睛看不到的,遇到这个情况,例如如下异常或者提示语法错误 
Java代码 
unexpected end of file 

我们可以在linux上使用cat命令,进行清洗数据, 
使用工具 cat 和 tr, 方法如下: 
bash$ cat -v startqftest.sh |tr -d "^M" > qf.sh 

其中 startqftest.sh 是存在问题的脚本, qf.sh是新生成的文件。 
sed 's/^M//' test.sh > back.sh^M是Ctrl+v Ctrl+m 

解释一下, cat 可以查看许多不可见这符, 
cat -t 显示TAB 为 ^I 
cat -e 显示行尾为 $, 
cat -v 显示不可见字符,用^M表示,所以^M就表示不认识的不可见字符。M 表示Mark,标记的意思。 
tr - translate or delete characters 
另外,cat 还可以用来调Makefile, 
cat -t Makefile 查看命令中有非Tab开头的, 
grep '^ ' Makefile 查找命令行中以空格开头的行 
cat -e Makefile 查看行尾是否正确,防止后面多一个空格, 
grep '\[ ]$' Makefile 找出以上那样的行 
原文地址:https://www.cnblogs.com/Rainbow-G/p/4080009.html