• 2024-07-13Linux fileformat error: bad interpreter: No such file or directory
    背景在windows下新建的sh文件,copy到linux下有的会报错,一般是格式问题默认情况下windows格式会在段落末尾有CR、LF,但是Unix格式只有LF示例执行sh脚本文件./file.sh-bash:./file.sh:/bin/sh^M:坏的解释器:没有那个文件或目录或者报badinterpreter:Nosuchfileordire
  • 2024-06-01脚本文件的换行符转换
    脚本文件的换行符转换dos2unix是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为\r\n,而Unix&Linux文件的换行符为\n。dos2unix命令其实就是将文件中的\r\n转换为\n。dos2unix命令用于将Windows格式的文件转换为Unix&Linux格式,而unix2dos
  • 2024-03-23SH文件从Window拷贝到Linux运行失败
    1.问题现象bash:./startup.sh:/bin/bash^M:解释器错误:没有那个文件或目录这个错误通常发生在尝试在Unix-like系统中执行脚本时,脚本文件的行尾结束符是Windows风格的CRLF(回车+换行,即\r\n),而不是Unix风格的LF(换行,即\n)。/bin/bash^M说明了这个问题,^M是字符\r的控制台输出表
  • 2024-02-27Windows下写脚本无法运行在linux上?怎麽办?
    Windows下写脚本无法运行在linux上?怎麽办?$‘\r‘:commandnotfound的解决方法在Linux系统中,运行Shell脚本,出现了如下错误:one-more.sh:line1:$'\r':commandnotfound1出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在Linux系统中行每行结尾是\n,
  • 2023-11-21在wsl中运行'./Allrun.sh'时报错:$'\r': command not found
    在Windows下编写好sh文件后,在Linux下或者wsl中运行会报错: line2:$'\r':commandnotfound 这是因为Windows系统的文件换行使用的是 \r\n ,而Unix系统是\n问题解决:dos2unixAllrun.shdos2unix是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的
  • 2023-09-23【问题解决】shell脚本执行错误 $‘\r‘:command not found
    问题原因:在Windows中,换行符是由回车符(\r)和换行符(\n)组成的,而在Unix/Linux等系统中,只使用换行符(\n)作为换行标志。当你在Unix/Linux系统上运行一个包含Windows格式换行符的脚本时,Shell会尝试解释其中的回车符,导致错误提示$‘\r’:commandnotfound。这是因为Shell将回
  • 2023-08-11$‘\r‘: command not found的解决方法
    缘起在Linux系统中,运行Shell脚本,出现了如下错误:one-more.sh:line1:$'\r':commandnotfound出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在Linux系统中行每行结尾是\n,所以在Linux系统中运行脚本时,会认为\r是一个字符,导致运行错误。解决方法去除Shell
  • 2023-08-01dos2unix
    dos2unix将DOS格式文本文件转换成Unix格式补充说明dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MACtoUNIXtextfileformatconverter)。DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D0A。而Unix下的文本文件是以\n作为断行标志的,表示成十六进
  • 2023-07-06Linux 错误: $'\r': command not found --九五小庞
    前段时间写脚本出现了$'\r':commandnotfound问题其实log报错已经非常明确了,是linux无法解析$'\r'。这其实是windows与linux系统的差异导致的。因为linux上的换行符为\n,而windows上的换行符为\r\n。所以脚本到linux上就无法解析了。通常的处理办法主要有2种:处理办法1setf
  • 2023-05-17Linux下文本格式异常:with CRLF line terminators
    linux下在处理文本时,有时会遇到列打印或者显示异常:这是因为有些命令输出重写向到文本,会带入默认Windows文本格式,正常的linux文本中每行是以换行符(\n)结束,windows文本中每行是以回车+换行符(\r\n)结束,可以通过dos2unix工具进行转换:通过file文件名命令可以查看输出:linux文本格式为:A
  • 2023-04-19svn Dos2unix issue
    svnDos2unixissue foreclipse:gotoTeam-->SetPropertyandinputbelow:Propertyname:svn:eol-stylePropertycontent:native forsubversionclient:Goto"C:\DocumentsandSettings\[username]\ApplicationData\Subversion"Changethe"
  • 2023-04-14如何去掉Linux vim文本中的^M
    正常情况如果vim只是发现行尾有^M,那么直接使用dos2unix就可以了dos2unixyourfile.txt但是有些文本只有^M没有换行。这是因为一般换行都是"0x0d0x0a",0x0d是回车键,0x0a是换行。只有^M没有换行,是因为只有0x0d没有0x0a,这时可以用sed替换sed-i"s/\x0D/\x0A/g"yourfile.txt
  • 2023-04-13windows上编写shell拷到linux执行报错
    1.最近随手在windows写了个自动安装docker的shell脚本,然后传到linux服务器执行竟然报以下错  2.进入vim查看突然看到下截图红色框地方 最后查阅资料发现,这个标志的产生原因是因为在windows下,文件的换行符是\r\n,而在linux下换行符是\n,所以,使用cat-Ainstall_docker.sh
  • 2022-12-22dos2unix命令详解
    dos2unix是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为\r\n,而Unix&Linux文件的换行符为\n.dos2unix命令其实就是将文件中的\r\n转
  • 2022-12-11$‘\r‘: command not found的解决方法
    缘起在Linux系统中,运行Shell脚本,出现了如下错误:one-more.sh:line1:$'\r':commandnotfound出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在
  • 2022-12-03dos2unix 安装和使用
    dos2unix是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为rn,而Unix&Linux文件的换行符为n。dos2unix命令其实就是将文件中的rn转换为n
  • 2022-10-27dos2unix
    代码在windowsvscode上写,写的时候忘了把EOL设置成\n,到linux上没法正常使用,脚本执行有问题,源文件无法正确编译。于是在网上搜到可以在linux上用dos2unix替换换行符。不