从windows上传了一个脚本到Linux上执行 出现如下错误:$'\r': command not found这是windows与Unix文本编辑的默认格式不同造成的,需要转成unix格式. 解决方法 [root@localhost ~]# yum install -y Example.sh [root@localhost ~]# dos2unix Example.sh dos2unix: converting file Example.sh to Unix format ...…
造成这个问题的原因是Windows下的空行,我们只需要把文件转成unix就好 Centos下,执行yum install dos2unix,然后dos2unix [file],再执行shell命令就好了…
在Linux下执行程序最省事的方式就是将系统的执行流程封装成一个shell脚本,上传到linux环境中后就可以直接执行了,但是今天在具体实施的时候出现了错误 $'\r': command not found,一直灭有解决,查询了相关的资料后才发现了问题,最根本的问题就是在Windows下换行的"\r"到了Linux环境下不能够识别了,因为Linux环境下默认的换行符为"\n",这里就需要做一点修改的工作才可以了. 我选择的解决方案是借助于dos2unix插件的转化功…
Centos7下执行shell脚本报错如下 [root@ip---- ~]# sh install_zabbix_agent.sh install_zabbix_agent.: $'\r': command not found install_zabbix_agent.: $'\r': command not found install_zabbix_agent.: $'\r': command not found install_zabbix_agent.: syntax error near…
shell脚本写得一切正常,但是一执行就报错: line: XXX "$'\r': command not found" 问题原因:文件格式问题(虽然在window和linux上选择的都是UTF-8,然而并没有用),因为我是直接复制了一个别的文件,然后在那个基础上改的. 解决方法:dos2unix XXX.sh 然后执行脚本,问题解决.…
shell脚本执行错误 $'\r':command not found Linux下有命令dos2unix 可以用一下命令测试 vi -b filename 我们只要输入dos2unix *.sh就可以完成转换工作了 如果命令不存在的话就用如下命令安装 yum install dos2unix -y…
在linux中执行脚本时出错 $'\r': command not found 错误原因是在脚本中有空行,如果脚本是在Windows下进行编辑之后上传到linux上去执行的话,就会出现这个问题. 因为win下的空行是/r/n,但是linux下是/n,没有识别/r,所以会导致上述的报错,这个属于脚本编码的问题. 建议: 在服务器中编写相关脚本,可以有效避免这个问题.…
执行shell脚本如果报如下错误: syntax error near unexpected token `$'\r'' syntax error: unexpected end of file $'\r': command not found 可能原因是写代码是编辑环境是window,或者Linux下的非Linux编码, 可以执行:dos2unix filename   来解决.…
在Linux下执行程序最省事的方式就是将系统的执行流程封装成一个shell脚本,上传到linux环境中后就可以直接执行了,但是今天在具体实施的时候出现了错误 $'\r': command not found,一直灭有解决,查询了相关的资料后才发现了问题,最根本的问题就是在Windows下换行的“\r”到了Linux环境下不能够识别了,因为Linux环境下默认的换行符为“\n”,这里就需要做一点修改的工作才可以了. 我选择的解决方案是借助于dos2unix插件的转化功能来完成这个工作,进入Linu…
本文是Linux Shell系列教程的第(二)篇,更多shell教程请看:Linux Shell系列教程 通过上一篇教程的学习,相信大家已经能够对shell建立起一个大体的印象了,接下来,我们通过一个最简单的脚本来继续深入对shell的学习. 新建shell脚本 新建一个文件,扩展名为sh(sh代表shell),或者其他任意名字,其实扩展名并不影响脚本执行,见名知意就好,这里用sh是为了便于分辨.在你新建的文件中输入以下内容: #!/bin/bash echo "Hello World !&qu…