1 查看执行sh文件的内容
[root@xxxdb0402 dbscripts]# more oswatcher_restart.sh 

#!/usr/bin/ksh

#export oswdir=`df |grep mysqllog|awk {'print $6}'`

export oswdir=/mysqllog

#th=`ps -ef|grep -v $$|grep OSWatcher.sh`

#echo $th;

if [ `ps -ef|grep -v grep|grep OSWatcher.sh|wc -l` = "0" ]

then

      cd $oswdir/osw

        echo "begin 1"

      ./startOSW.sh 60 216

 else

      echo "OSWatcher is running "

fi

exit

2 执行sh命令
[mysql@xxxdb0402 dbscripts]$ sh oswatcher_restart.sh 

begin 1

oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied

[mysql@xxxdb0402 dbscripts]$ 

[mysql@xxxdb0402 dbscripts]$ ll /mysqllog/osw/startOSW.sh 

-rw-r--r-- 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

看了,是755的权限啊,怎么会执行不了了呢?

3 google了下,看到他们说要看前面第一栏的信息,看rwx等信息

r-- --- --- 文文件属主可读,但不能写或执行

r-- r-- --- 文文件属主和属组用户(一般来说,是文件属主所在的缺省组)可读

r-- r-- r- - 文任何用户都可读,但不能写或执行

rwx r-- r- - 文文件属主可读、写、执行,属组用户和其他用户只可读

rwx r-x --- 文文件属主可读、写、执行,属组用户可读、执

rwx r-x r- x 文文件属主可读、写、执行,属组用户和其他用户可读、执行

rw- rw- --- 文文件属主和属组用户可读、写

rw- rw- r- - 文文件属主和属组用户可读、写,其他用户可读

rw- rw- --- 文文件属主和属组用户及其他用户读可以读、写,慎用这种权限

设置,因为任何用户都可以写入该文件

chmod [who] operator [permission] filename

who 中   u  是文件主属权限  g 是属组用户权限   o 其他用户权限  a 是所有用户权限

         +  是增加权限      - 是取消权限       =  是设定权限

         r  是读权限        w 是写权限        
x是执行权限  u,g,o 针对文件属主、属组用户及其他用户的操作。


 


4  再看我的ll文件结果,没有x标示,那就是没有执行权限.
[mysql@xxxdb0402 dbscripts]$ ll /mysqllog/osw/startOSW.sh 


-rw-r--r-- 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

5  因此重新赋予755权限
[root@xxxdb0402 dbscripts]# chmod 755 /mysqllog/osw/startOSW.sh

[root@xxxdb0402 dbscripts]# ll /mysqllog/osw/startOSW.sh 

-rwxr-xr-
x 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

看到了,有了x标示了,表示可以执行了.

6 再次执行sh,ok了。
[root@xxxdb0402 dbscripts]# sh oswatcher_restart.sh 

begin 1

oswatcher_restart.sh: ./startOSW.sh: /bin/ksh: bad interpreter: No such file or directory

[root@xxxdb0402 dbscripts]#

又有报错,不过这就是另外一个问题了.

linux下执行sh文件报错:oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied的更多相关文章

  1. linux下编译make文件报错“/bin/bash^M: 坏的解释器,使用grep快速定位代码位置

    一.linux下编译make文件报错“/bin/bash^M: 坏的解释器 参考文章:http://blog.csdn.net/liuqiyao_01/article/details/41542101 ...

  2. linux下执行QT可执行文件报错

    老样子,不多BiBi,直接进入主题! 有时候在linux下编译好QT程序,用QTCreator运行没问题,打包移植到另一台机器上,用命令./XX执行就会报错:error while loading s ...

  3. 解决 linux下编译make文件报错“/bin/bash^M: 坏的解释器:没有那个文件或目录” 问题

    PS背景:我在公司做sdk 的pc端开发,所以经常会在win下编译通过之后跑到linux下再运行一次已确保能支持多平台. 今儿在win下跑完一程序,然后放到linux下跑的时候,我用指令: [plai ...

  4. Linux下执行Java程序报错

    在linux下编译java程序,执行javac编译生成class文件时,在centos7终端输入如,javac hello.java    会提示未找到指令,但用java -verison测试环境变量 ...

  5. Linux下Tomcat项目启动报错

    Linux下Tomcat项目启动报错 org.springframework.beans.factory.CannotLoadBeanClassException: Error loading cla ...

  6. Linux下安装Tomcat启动报错

    一.报以下错误: Using CATALINA_BASE:   /home/apache-tomcat-7.0.72Using CATALINA_HOME:   /home/apache-tomcat ...

  7. linux下unzip解压报错“symlink error: File name too long”怎么办?提供解决方案。

    点击上方↑↑↑蓝字[协议分析与还原]关注我们 " 分享unzip工具的一个bug." 最近在研究菠菜站,中间用到了Spidermonkey,碰到一些小波折,在这里分享出来,以便大家 ...

  8. Linux - xshell上传文件报错乱码

    xshell上传文件报错乱码,解决方法 rz -be 回车 下载sz  filename

  9. 解决Linux下编译.sh文件报错 “[: XXXX: unexpected operator”

    本人经常在Linux通过编译 .sh文件来生成工程,之前一直都没问题,代码一直都没变,但是今天编译的时候,却提示错误:

随机推荐

  1. 使用uWSGI+nginx部署Django项目

    最近使用django写了一些项目,不过部署到服务器上碰到一些问题,还有静态文件什么的一堆问题,这里总结一下碰到的问题和解决方案,总体思路是按照官方文档走的. 原文地址:http://uwsgi-doc ...

  2. ubuntu之安装java浏览器插件

    最近搞什么openstack,在浏览器访问远程虚拟机的时候,需要浏览器有支持java.这个之前真没注意过呢, 通过自己的实践写点东西,方便一下你们搞: 1,首先去http://www.java.com ...

  3. 阿里云部署 Flask + WSGI + Nginx 详解

    抵不住朋友的诱惑,今天终于入手了一台阿里云服务器,是Ubuntu 1.4 32位版本,最初考虑是用来尝尝鲜只是买了个最低配的,价格算起来与在国外买个空间的价格相当吧(可能一年才贵100多),但用起来感 ...

  4. Map接口的学习

    接口Map<K, V> 一.Map功能 1.添加 put(K key, V value) putAll(Map<? extends K, ? extends V>); 2.删除 ...

  5. 如何在Eclipse中配置Tomcat(免安装版)

    如何在Eclipse中配置Tomcat(免安装版) 2013-10-09 23:19wgelgrsh | 分类:JAVA相关 | 浏览642次 分享到:   2013-10-10 17:10提问者采纳 ...

  6. YII2 使用js

    1.在 /backend/assets/ 中新建一个文件 CollectionAsset.php <?php /** * @link http://www.yiiframework.com/ * ...

  7. ASP.NET 定时通知

    ASP.NET 定时通知 using System; using System.Collections.Generic; using System.Linq; using System.Web; us ...

  8. USB CCID协议和PC/SC标准

    CCID是USB Chip/Smart Card Interface Devices,也就是USB芯片智能卡接口设备,是USB规范下的一种设备类型.就像HID设备一样,需要参考USB规范来写固件程序来 ...

  9. matrix67:kmp算法详解

    个人认为KMP是最没有必要讲的东西,因为这个东西网上能找到很多资料.但网上的讲法基本上都涉及到“移动(shift)”.“Next函数”等概念,这非常容易产生误解(至少一年半前我看这些资料学习KMP时就 ...

  10. python none,null,,,,,类型

    内建类型None表示一个空对象,没有方法和属性. None是一个特殊的常量. None和False不同. None不是0. None不是空字符串. None和任何其他的数据类型比较永远返回False. ...