在Windows下生成的shell文件在上传到Linux上发现无法执行
Posted 夜雨惊风
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Windows下生成的shell文件在上传到Linux上发现无法执行相关的知识,希望对你有一定的参考价值。
为了批量生成shell文件,我在Windows下用knime循环生成一批shell文件,在上传到Linux上执行时发现报错:
[[email protected] Stock]$ ./f_wdt_outsource_outbound_header.sh -bash: ./f_wdt_outsource_outbound_header.sh: /bin/sh^M: 坏的解释器: 没有那个文件或目录 [[email protected] Stock]$
在将shell文件内的代码完全复制到一个新建的shell文件下,发现执行成功。
发现原因是win下空格之类符号与Linux下不一致,因此编译错误
执行
[[email protected] Stock]$ sed -i ‘s/ $//‘ f_wdt_outsource_outbound_header.sh [[email protected] Stock]$
后,执行成功
以上是关于在Windows下生成的shell文件在上传到Linux上发现无法执行的主要内容,如果未能解决你的问题,请参考以下文章
夺命雷公狗---linux NO:30 linux之通过X-Shell在windows上传文件到服务器上
windows下上传shell脚本不能运行—将dos模式修改为unix 文件格式