> 文章列表 > ROS系列——错误syntax error near unexpected token `$‘do\\r‘‘

ROS系列——错误syntax error near unexpected token `$‘do\\r‘‘

ROS系列——错误syntax error near unexpected token `$‘do\r‘‘

ROS系列——错误syntax error near unexpected token `$'do\\r''

  • 说明
  • 解决方法
    • 问题原因
    • 解决
      • 1.终端运行
      • 2.本文使用的方法,适用于代码行数较少
      • 其他方法,本质就是替换
      • 3.重新运行脚本

说明

在运行.sh脚本时,报错:
syntax error near unexpected token `$‘do\\r"

解决方法

问题原因

网上进行搜索,发现是存在看不见的windows下的符号^M

解决

1.终端运行

vim -b 文件名,查看一下文件内容,例如

vim -b my_test.sh

发现每行后面都多了一个符号^M,解决方法便是删除这个符号

2.本文使用的方法,适用于代码行数较少

可以输入i进入编辑模式,手动删除每行的符号^M,保存退出即可

其他方法,本质就是替换

使用vim替换命令,%s/需要替换的内容/替换后的内容/g
输入%s/^M//g,删除所有符号。

3.重新运行脚本