本来跑的好好得一个文件,在windows下修改了,然后移植到linux就报错了。

找了一圈以下是解决方案:

这种情况发生的原因是因为你所处理的文件换行符是dos格式的"\r\n"

可以使用cat -v 文件名 来查看换行符是否是,如果是上述的,则行结尾会是^m

需要转换成linux/unix格式的"\n"

具体转换办法就是转换换行符

可以用sed命令处理一下文件,命令如下:

sed 's/\r//' 原文件 >转换后文件

 
1.png
 
2.png

检查shell语法

[root@iZm5ed2begvgw01qrymv8yZ Data]# bash -n task_start.sh
task_start.sh: line 4: syntax error near unexpected token `$'do\r''
'ask_start.sh: line 4: `do
[root@iZm5ed2begvgw01qrymv8yZ Data]#

在我执行发现代码没有了

[root@iZm5ed2begvgw01qrymv8yZ Data]# sed 's/\r//g' task_start.sh > task_start.sh
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]# cat task_start.sh -v
[root@iZm5ed2begvgw01qrymv8yZ Data]# cat task_start.sh

原因

···

解决

[root@iZm5ed2begvgw01qrymv8yZ Data]# sed 's/\r//g' task_start.sh > task_start2.sh
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]#
[root@iZm5ed2begvgw01qrymv8yZ Data]# cat task_start2.sh
#!/usr/bin/env bash
task_url=("http://hs.oeynet.com/task.php" "http://hs.oeynet.com/task.php")
for n in `seq 10`
do
for task in ${task_url[*]}
do
curl $task >> /www/server/logs/task.log
done
sleep 6
done
[root@iZm5ed2begvgw01qrymv8yZ Data]# cat task_start2.sh -v

shell文件报错syntax error near unexpected token '$'\r''的更多相关文章

  1. Shell脚本报错--syntax error near unexpected token for((i=0;i<$length;i++))

    现象: shell脚本使用Nodepad++进行本地编辑,在编辑后上传到linux机器进行执行时提示“syntax error near unexpected token for((i=0;i< ...

  2. 关于报错“syntax error near unexpected token `”和回车换行

    本来是很简单一个事情,转过来是因为打字机这事比较有趣…… http://blog.csdn.net/xyp84/archive/2009/08/11/4435899.aspx 摘要一下: 回车 换行 ...

  3. js文件报错Syntax error on token "Invalid Regular Expression Options", no accurate correction

    Syntax error on token "Invalid Regular Expression Options", no accurate correction 1.选中报错的 ...

  4. shell编程报错:“syntax error near unexpected token `”

    今天写了个shell脚本,在自己机器上运行正常,给同事,运行报错syntax error near unexpected token `,左看右看shell脚本没有问题,没有办法google搜索,发现 ...

  5. -bash: /etc/profile: line 11: syntax error near unexpected token `$'{\r''报错问题解决

    在Linux系统配置Java环境变量之后执行 source /etc/profile指令报:-bash: /etc/profile: line 11: syntax error near unexpe ...

  6. Linux下docker报错syntax error:unexpected protocol at end of statement

    ---恢复内容开始--- [Linux]Shell脚本“syntax error: unexpected end of file”原因及处理 :::https://blog.csdn.net/u013 ...

  7. Linix登录报"/etc/profile: line 11: syntax error near unexpected token `$'{\r''"

    同事反馈他在一测试服务器(CentOS Linux release 7.2.1511)上修改了/etc/profile文件后,使用source命令不能生效,让我帮忙看看,结果使用SecureCRT一登 ...

  8. JS function document.onclick(){}报错Syntax error on token "function", delete this token

    JS function document.onclick(){}报错Syntax error on token "function", delete this token func ...

  9. 一个参数大小写引发的uploadify报错 "Syntax error, unrecognized expression: #"

     上传控件uploadify 报错"Syntax error, unrecognized expression: #" 版本为 uploadify3.2  报错原因:参数ID[hi ...

  10. JS function document.onclick(){}报错Syntax error on token "function", delete this token - CSDN博客

    原文:JS function document.onclick(){}报错Syntax error on token "function", delete this token - ...

随机推荐

  1. 解决CDH 访问权限问题

    CDH 6.2 安装好以后,直接使用root 或者 其他账号执行spark-shell 会报权限错误 22/01/04 17:46:28 ERROR spark.SparkContext: Error ...

  2. Java开发学习(三十一)----Maven属性与版本管理

    一.属性 1.1 问题分析 如下图所示 你会发现,如果现在想更新Spring的版本,你会发现依然需要更新多个jar包的版本,这样的话还是有可能出现漏改导致程序出问题,而且改起来也是比较麻烦. 问题清楚 ...

  3. python中使用数组作为索引

    链接:https://blog.csdn.net/yzlh2009/article/details/114118470 情况一,索引数组为整数值 情况二,索引数组为bool值

  4. 前端 vue表格数据导出Excel 文件实现

    实现思路 使用json2csv将后台json数据转化为csv格式数据 采用创建Blob(二进制大对象)的方式来存放缓存数据: 生成下载链接: 创建一个a标签,设置href和download属性 触发a ...

  5. Redis基本数据结构ZipList

    为什么要有ziplist 有两点原因: 普通的双向链表,会有两个指针,在存储数据很小的情况下,我们存储的实际数据的大小可能还没有指针占用的内存大,是不是有点得不偿失?而且Redis是基于内存的,而且是 ...

  6. 获取 Docker 容器的 PID 号

    # 获取容器的 CONTAINER ID docker ps -q 5354ce7e85e1 # 通过 docker top 获取 PID docker top 5354ce7e85e1 UID PI ...

  7. python推导式特殊用法

    字典推导式 >>> dic = {x: x**2 for x in (2, 4, 6)} >>> dic {2: 4, 4: 16, 6: 36} >> ...

  8. vue通过插件实现PDF生成以及下载

    第一步: 安装插件 npm install --save html2canvas //将html转换成图片 npm install jspdf --save //将图片生成pdf 第二步: 在需要的地 ...

  9. 洛谷P2341 [USACO03FALL / HAOI2006] 受欢迎的牛 G (tarjan缩点)

    在本题中很明显,给你一个有向图,要用tarjan缩点. 缩点后,一头牛要受到所有牛的欢迎,那么该点的出度要为0,这是容易证明的:如果该点还有出度,比如a连向b,那么a不受到b的欢迎.所以我们要找出度为 ...

  10. CentOS 7.9 安装 rabbitmq-3.10.2

    一.CentOS 7.9 安装 rabbitmq-3.10.2.tar.gz 地址 https://www.rabbitmq.com https://github.com/rabbitmq/rabbi ...