这个是什么问题呀?哪位大神帮忙解答解答。

解决方案 »

  1.   

    windows 下编辑的 step01.sh文件?
    用UE转成Unix格式
      

  2.   

    $ cat demo.sh; od -tx1 demo.sh
    #!/bin/bash
    echo $0
    0000000 23 21 2f 62 69 6e 2f 62 61 73 68 0d 0a 65 63 68
    0000020 6f 20 24 30 0d 0a
    0000026
    $ cat demo2.sh; od -tx1 demo2.sh
    #!/bin/bash
    echo $0
    0000000 23 21 2f 62 69 6e 2f 62 61 73 68 0a 65 63 68 6f
    0000020 20 24 30 0a
    0000024
    $ ./demo.sh
    -bash: ./demo.sh: /bin/bash^M: bad interpreter: No such file or directory
    $ ./demo2.sh
    ./demo2.sh
      

  3.   

    :set ff=unix
      

  4.   

    vi 脚本名
    :set ff=unix
      

  5.   

    这是由于windows和unix下回车换行符的编码差异导致的。使用dos2unix转换一下格式就行了:dos2uinx step01.sh。
    如果经常在unix和windows上交叉编辑文件的话安装这个工具会比较方便。