这几天有个需求要上线报表,需要用到sqoop抽取数据
本来已经把shell脚本写好了,放到集群上跑测试,但是突然报了个莫名其妙的错误
new1.sh: line 2: $’\r’: command not found
ERROR tool.BaseSqoopTool: Error parsing arguments for eval
sh: line 4: --connect: command not found
sh: line 5: --username: command not found
sh: line 6: --password: command not found
sh: line 7: --query: command not found
复制代码到命令行执行是正常的,但是sh 文件执行却一直报错
从脚本内容来看与往常写的并没有什么区别,网上找解决办法也没有找到能解决的办法.
更改参数和格式都没有好的解决
一筹莫展的时候注意到了
** new1.sh: line 2: $’\r’: command not found **
这个报错很奇怪,我在第二行什么都没有写,所以猜测是换行符的问题
windows的换行符 \r\n
linux 换行符 \n
应该是这里出了问题
解决办法:
利用notepad++来吧换行符换掉
在视图中打开显示行尾符
打开替换 把 \r\n 替换成 \n