zoukankan      html  css  js  c++  java
  • shell 报错:syntax error: unexpected end of file

     

    有时执行脚本时会报错:

    [root@host1 shell]# sh -x test.sh 
    + $'
    '
    : command not found
    test.sh: line 37: syntax error: unexpected end of file

    原因可能是:

    文本编辑是在windows下通过记事本或其它编辑器编写的这个文件,运行 在cygwin模拟LINUX软件环境下。

    解决思路:

    DOS下文件和Linux下文件格式差异问题导致的。

    DOS下的文本文件是以 作为断行标志的,表示成十六进制就是0D 0A。而Unix下的文本文件是以 作为断行标志的,表示成十六进制就是0A。

    【在windows里,换行用的两个符号,回车 ,换行符号 ,在linux下只需一个符号 就可以了.】

    DOS格式的文本文件在Linux下,用较低版本的vi打开时行尾会显示^M,当然也有可能看不到,但是在vi的时候,会在下面显示此文件的格式,"M.txt" [dos] 8L, 72C表示是一个dos文件格式。

    解决方案:

    使用下面的命令将文件格式设置为unix格式即可解决上述错误

    vi test.sh
    :set fileformat=unix
    :wq
  • 相关阅读:
    你所不知道的setTimeout
    SecureCRT8.1下载+注册机+破解教程
    jQuery学习
    GIt学习
    多进程
    Linux下的压缩(zip)解压(unzip)缩命令
    三次握手四次挥手
    django常见问题
    form和modelform
    文件上传
  • 原文地址:https://www.cnblogs.com/du-jun/p/12190881.html
Copyright © 2011-2022 走看看