zoukankan      html  css  js  c++  java
  • base脚本执行的一些问题

    1先说脚本执行问题

    ubuntu下/bin/sh的指向

    ubuntu 下 /bin/sh 默认是dash,用ls -l /bin/sh就可以看出来sh是指向dash的链接,有时候会导致使用bash脚本的时候出问题。

    如果遇到这个问题了,就要把sh指向bash。

    可以用ln:ln -s /bin/bash /bin/sh

    或者用sudo dpkg-reconfigure dash 选择否

     

    2再来看

    1. -bash: ./run.sh: Permission denied

    这种一看就知道是没有权限执行

    只需要执行

    1. chomd +x *.sh

     

    3继续

    1. [root@localhost test]# ./run.sh   
    2. -bash: ./run.sh: /bin/sh^M: bad interpreter: No such file or directory  

    这种情况主要原因是run.sh在windows下编辑然后上传到linux系统里执行的。.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。

    我们使用vim来转一下格式

    1. [root@localhost test]# vi run.sh   

    在vi命令模式中使用 :set ff 命令

    1. :set ff

    可以看到改文件的格式为dos

    1. fileformat=dos

    修改文件format为unix

    方法一:使用vi修改文件format

    命令:set ff=unix

    1. set ff=unix

    执行完后再通过set ff命令查看文件格式,结果如下:

    1. fileformat=unix

    方法二:直接使用dos2unix命令修改

    1. [root@localhost test]# dos2unix run.sh   
    2. dos2unix: converting file run.sh to UNIX format ...  

     

  • 相关阅读:
    JSTL标签用法
    (转)javascript正则实战
    Spring中几种数据源的配置
    (转)常用正则表达式
    EL表达式详解
    JAVA环境变量配置(转)
    S2SH整合步骤
    正则表达式30分钟教程(转)
    在Flash Player 10.2中使用原生鼠标指针
    time
  • 原文地址:https://www.cnblogs.com/shiv/p/5087964.html
Copyright © 2011-2022 走看看