zoukankan      html  css  js  c++  java
  • -bash: /etc/profile: line 11: syntax error near unexpected token `$'{ ''报错问题解决

    在Linux系统配置Java环境变量之后执行 source /etc/profile指令报:-bash: /etc/profile: line 11: syntax error near unexpected token `$'{ ''如下图:

    错误提示信息已经反馈/etc/profile里面有一些异常,初步检查/et/profile文件后,没有发现异常,很是奇怪,后面我使用cat -v /etc/profile检查,发现里面大量的Windows下的换行符。如下截图所示

    得知是Linux和windows下的回车换行符不兼容的问题。

    所以,剩下的就是去将windows下面的CR LF,转换为Linux下面的LF,即可。

    此处,不需要再麻烦地去用其他dos2unix等工具了,notepad++就可以帮忙搞定:

    编辑->档案格式转换->转换为UNIX格式:

    即可将所有的 CR LF,转换为LF:

    所以,越加发现notepad++的强大之处了。

    然后再运行此shell脚本,即可正常运行了。

    【总结】

    linux/cygwin下面的shell脚本出现错误:

    syntax error near unexpected token `$’do ”

    是由于该脚本文件是在windows环境下创建编辑的,其默认是将所有的回车变成:

    CR加上 LF,而Linux/Unix中的回车只是LF,所以导致解释器不认,出现此错误。

    解决办法就是,将所有的CRLF转换为LF即可。

    转换的方法有多种,比如用dos2unix,或用此处的notepad++帮我们转换,都可以。

  • 相关阅读:
    pytest-multithreading实现并发运行(可以指定不参与并发的case)
    python 命令行传参方式结合jenkins构建时选择环境
    pytest结合ReportPortal使用
    loguru日志
    httprunner3 log放到allure中显示
    pytest
    python
    Mac下安装docker
    USC提出拟牛顿法深度学习优化器Apollo,效果比肩SGD和Adam
    28例电气自动控制电路图,快收藏!
  • 原文地址:https://www.cnblogs.com/nfex/p/10557711.html
Copyright © 2011-2022 走看看