syntax error near unexpected token `done’

运行脚本文件出现syntax error near unexpected token `done’的问题 搜索发现很多答案给出的都是win 和linux 编码解码问题
如果是编码问题用方案1解决 :

脚本如下:

#!/bin/bash
#riqizizeng
datebeg=$1
dateend=$2
#read datebeg
#read dateend
beg_s=`date -d "$datebeg" +%s`
echo "$beg_s"
end_s=`date -d "$dateend" +%s`
echo "$end_s"
while [ "$beg_s" -le "$end_s" ]
dodate -d @$beg_s +"%Y%m%d"let "beg_s=$beg_s+86400"
done

脚本没问题,却老报错;
因为MS-DOS及Windows是回车+换行来表示换行,因此在Linux下用Vim查看在Windows下用VC写的代码,行尾后的“^M”符号,表示的是符。
现在,你使用vim -b 打开你的文件。就会发现每一行都有^M ,那么我们可以是用全局替换替换掉

解决方法1-编码问题

    在命令编辑行<就是: 按ESC键 然后shift+:冒号>输入:%s/^M//g

注意:上述命令行中的“M”符,不是“”再加上“M”,而是由“Ctrl+v”、“Ctrl+M”键生成的。

原文链接:https://blog.csdn.net/wenlong237/article/details/17663499

解决方法2-代码循环闭合问题!!

大多数解决方案都是方案1 但是按照方案一改了很多次都没有解决:
因为不是很熟悉shell脚本编写 出现了if 的最后没有 fi 来闭合的问题 因为循环层数较多所以很难发现

【Solved】syntax error near unexpected token done相关推荐

  1. syntax error near unexpected token 脚本报错误解决【转】

    第一种方法失败了,win的文本自带^M的确是问题 原创 syntax error near unexpected token 脚本报错误解决 2018-03-14 21:25:53 會飛的土豆 阅读数 ...

  2. 【解决】source ~/.vimrc出错bash: /etc/vim/vimrc: line 21: syntax error near unexpected token `syntax'

    执行了"source ~/.vimrc"后,一直报如下错误: bash: All system-wide defaults are set in /debian.vim and s ...

  3. 写shell,运行出错:syntax error near unexpected token `do

    cygwin下面写shell,运行出错:syntax error near unexpected token `$'do\r" 写shell,运行出错:syntax error near u ...

  4. -bash:syntax error near unexpected token '('

    在Xshell5中编写int main(int argc,char** argv)时, 出现-bash:syntax error near unexpected token '('  : 可是我是按照 ...

  5. syntax error near unexpected token

    2019独角兽企业重金招聘Python工程师标准>>> shell脚本,在自己机器上运行正常,给同事,运行报错syntax error near unexpected token ` ...

  6. linux shell脚本无法执行,报错syntax error near unexpected token `$'\r''解决方法

    运行shell脚本时出现:syntax error near unexpected token `$'\r"的错误,一般是格式的问题,比如直接从txt文档拷贝过来的内容: 解决方法:sed ...

  7. 成功解决.sh: line 6: syntax error near unexpected token `do

    成功解决.sh: line 6: syntax error near unexpected token `do 目录 解决问题 解决思路 解决方法 T1.修改格式系统间不兼容的格式

  8. 成功解决bash syntax error near unexpected token from

    成功解决bash syntax error near unexpected token from 目录 解决问题 解决思路 解决方法 解决问题 -bash: syntax error near une ...

  9. shell if else 用法 syntax error near unexpected token `then'

    1.  错误 #!/bin/bash platform=$1 if[ "$platform" = "ibmaix64" ] then       echo &q ...

最新文章

  1. 天地图,js 4.0 api,简单调用,高手请绕行
  2. HDU-1162-Eddy's picture
  3. android canvas png 失真,【小程序】--------------处理canvas导出图片模糊问题-------------【劉】...
  4. vue项目请求封装;axios封装使用
  5. chrome 代理插件_Chrome浏览器拓展插件同步助手
  6. 好产品改变世界——《人人都是产品经理》即将上市
  7. 局部加权线性回归,线性回归高级版
  8. 分享一个查看JSON的程序
  9. Redis的安装和使用之二------phpredis与phpRedisAdmin
  10. JavaFX桌面应用开发-Scene(场景)
  11. 记忆翻牌游戏代码html,html5记忆翻牌游戏实现思路及代码
  12. 智能中线保护装置-零线电流保护器-中性线保护装置
  13. Java 桌球小游戏
  14. 关于react-router-dom 6.0.1的基础写法 解决Error: A <Route> is only ever to be used as the child of <Routes>
  15. 数说故事全新官网2.0正式上线,全新视觉焕新升级
  16. 为什么计算机领域没有诺贝尔奖,为什么没有数学家获得诺贝尔奖
  17. 华硕P8B75-M主板BIOS-1701加NVME支持
  18. 您可能不需要Twitter客户端,只需在New Twitter中学习热键
  19. ESP8266-Arduino编程实例-MPU6500加速计陀螺仪驱动
  20. 芯路遥FOC工程笔记

热门文章

  1. win系统C++的udp通信(接收并发送)详细教程、win下inet_pton和inet_ntop无法使用解决方法
  2. 【渝粤教育】电大中专电子商务网站建设与维护 (2)_1作业 题库
  3. 旋转矩阵、欧拉角、四元数理论及其转换关系
  4. OBS录屏低音过重/背景嗡嗡声的解决方法
  5. ajax读取文件的小总结
  6. c语言宏定义(c语言宏定义是什么意思)
  7. visual studio(vs)2022如何在解决方案中自动配置文件路径(如何向解决方案中批量添加文件)(如何将修改路径之后的的源文件添加到解决方案中)
  8. eyeon项目总结 音频转换 amr-mp3 web项目路径实践经验(血泪史)
  9. 使用ProcMon 输出调试信息
  10. C++模拟扑克过五关