• bin/sh^M: bad interpreter: No such file or directory解决


     原因是.sh脚本在windows系统下用记事本文件编写的。不同系统的编码格式引起的。

     
    转行文件的编码格式:
     
    1、确保用户对文件有读写及执行权限
         oracle@linux-106:~/RMAN/bin> chmod a+x test.sh
    2、然后修改文件格式
       (1)使用vi工具
         oracle@linux-106:~/RMAN/bin> vi test.sh
        (2)利用如下命令查看文件格式 
         :set ff 或 :set fileformat 
         可以看到如下信息 
         fileformat=dos 或 fileformat=unix 
         (3) 利用如下命令修改文件格式 
         :set ff=unix 或 :set fileformat=unix 
         :wq (存盘退出)
     
    3、最后再执行
        oracle@linux-106:~/RMAN/bin> ./test.sh
    Linux下执行.sh脚本错误:command not found
          command not found这个问题一般都是像我这样的新手才会犯的,所以刚学linux的童鞋们遇到这个问题可以看看我的解释,可能会给你帮助。
     
          其实这个问题可能是很多原因引起的,今天我碰到原因很值得关注,一般我们在写java代码的时候定义变量都喜欢这样写” String  test  =  “ ”; ”。今天我写了一个shell脚本,在脚本里定义了一个变量,(“host = “””),结果执行的时候出现了这个command not found。我是冥思苦想啊,怎么想也想不出为什么,后来我终于发现问题的所在了就是一个空格在作怪,其实在定义shell脚本的变量时在变量名和等号之间是不允许有空格的,而我写的是test和=之间有空格,所以系统默认为,test是一个命令,所以系统找不到这个命令。切记切记,小问题有时候也会让你停滞不前的。
  • 相关阅读:
    mina中的发送延时
    微服务理论之五:微服务架构 vs. SOA架构
    同步
    JAVA中线程同步的方法(7种)汇总
    http连接管理
    MySQL存储引擎比较
    ZAB与Paxos算法的联系与区别
    syslog之二:syslog协议及rsyslog服务全解析
    微服务理论之六:ESB与SOA的关系
    DBCP连接池原理分析及配置用法
  • 原文地址:https://www.cnblogs.com/duanxz/p/2749186.html
Copyright © 2020-2023  润新知